How to investigate web script not running?

Discussion in 'Python' started by Gilles, Sep 28, 2012.

  1. Gilles

    Gilles Guest

    Hello

    I'm trying to run my very first FastCGI script on an Apache shared
    host that relies on mod_fcgid:
    ==============
    #!/usr/bin/python
    from fcgi import WSGIServer
    import cgitb

    # enable debugging
    cgitb.enable()

    def myapp(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/plain')])
    return ['Hello World!\n']

    WSGIServer(myapp).run()
    ==============

    After following a tutorial, Apache complains with the following when I
    call my script:
    ==============
    Internal Server Error

    The server encountered an internal error or misconfiguration and was
    unable to complete your request.
    ==============

    Generally speaking, what tools are available to investigate issues
    when running a Python web app?

    Thank you.
    Gilles, Sep 28, 2012
    #1
    1. Advertising

  2. Gilles

    Gilles Guest

    On Fri, 28 Sep 2012 13:37:36 +0200, Gilles <> wrote:

    >==============
    >Internal Server Error
    >
    >The server encountered an internal error or misconfiguration and was
    >unable to complete your request.
    >==============


    Looks like fcgi.py doesn't support WSGI:

    Traceback (most recent call last):
    File "hello.fcgi", line 2, in ?
    from fcgi import WSGIServer
    ImportError: cannot import name WSGIServer
    Gilles, Sep 28, 2012
    #2
    1. Advertising

  3. Gilles

    Michael Ross Guest

    On Fri, 28 Sep 2012 13:37:36 +0200, Gilles <> wrote:

    > Hello
    >
    > I'm trying to run my very first FastCGI script on an Apache shared
    > host that relies on mod_fcgid:
    > ==============
    > #!/usr/bin/python
    > from fcgi import WSGIServer
    > import cgitb
    >
    > # enable debugging
    > cgitb.enable()
    >
    > def myapp(environ, start_response):
    > start_response('200 OK', [('Content-Type', 'text/plain')])
    > return ['Hello World!\n']
    >
    > WSGIServer(myapp).run()
    > ==============
    >
    > After following a tutorial, Apache complains with the following when I
    > call my script:
    > ==============
    > Internal Server Error
    >
    > The server encountered an internal error or misconfiguration and was
    > unable to complete your request.
    > ==============



    Do it the other way around:

    # cgitb before anything else
    import cgitb
    cgitb.enable()

    # so this error will be caught
    from fcgi import WSGIServer



    Regards,
    Michael
    Michael Ross, Sep 28, 2012
    #3
  4. Gilles

    Gilles Guest

    On Fri, 28 Sep 2012 14:16:22 +0200, "Michael Ross" <>
    wrote:
    >Do it the other way around:
    >
    ># cgitb before anything else
    >import cgitb
    >cgitb.enable()
    >
    ># so this error will be caught
    > from fcgi import WSGIServer


    Thanks much for the tip. The error isn't displayed when calling the
    script from a web browser but it is when running the script on a shell
    account.

    It looks like that newer version of fcgi.py doesn't include support
    for WSGI, and I need some extra (Flup?) software to sit between
    mod_fcgid and a WSGI Python application.

    Definitely not plug 'n play :-/
    Gilles, Sep 28, 2012
    #4
  5. On Friday, 28 September 2012 18:45:41 UTC+5:30, Gilles wrote:
    > On Fri, 28 Sep 2012 14:16:22 +0200, "Michael Ross" <>
    >
    > wrote:
    >
    > >Do it the other way around:

    >
    > >

    >
    > ># cgitb before anything else

    >
    > >import cgitb

    >
    > >cgitb.enable()

    >
    > >

    >
    > ># so this error will be caught

    >
    > > from fcgi import WSGIServer

    >
    >
    >
    > Thanks much for the tip. The error isn't displayed when calling the
    >
    > script from a web browser but it is when running the script on a shell
    >
    > account.
    >
    >
    >
    > It looks like that newer version of fcgi.py doesn't include support
    >
    > for WSGI, and I need some extra (Flup?) software to sit between
    >
    > mod_fcgid and a WSGI Python application.
    >
    >
    >
    > Definitely not plug 'n play :-/


    Well the plug and play standard is superseded by USB practically.
    Ramchandra Apte, Sep 29, 2012
    #5
  6. Gilles

    Gilles Guest

    On Sat, 29 Sep 2012 10:05:25 -0700 (PDT), Ramchandra Apte
    <> wrote:
    >> Definitely not plug 'n play :-/

    >
    >Well the plug and play standard is superseded by USB practically.


    Indeed ;-)

    Anyway, Support finally got back to me, and it turns out that they
    have Flup alreay installed on shared hosts, so I just have to provide
    a WSGI script. OTOH, mod_fcgid is confured to wait 5mn or so before
    checking if the script was edited, so I'll have to use a test host for
    development and only use the shared host for deployment.

    Thank all.
    Gilles, Sep 30, 2012
    #6
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Benjamin Rutt
    Replies:
    2
    Views:
    934
    Peter Hansen
    Dec 20, 2005
  2. Rajat
    Replies:
    3
    Views:
    689
    Jorgen Grahn
    Jan 8, 2010
  3. Replies:
    2
    Views:
    147
    Sean O'Halpin
    Dec 17, 2008
  4. Replies:
    4
    Views:
    183
    Josef Moellers
    Oct 27, 2007
  5. Replies:
    4
    Views:
    294
    ccc31807
    Jul 29, 2011
Loading...

Share This Page