Python [ mod_wsgi ] works via cli but not via apache











up vote
-1
down vote

favorite












cli:



[root@localhost 0]# python test13.wsgi
(1, 'aaaaaa')
[root@localhost 0]#


apache:




Internal Server Error




full script code:



import MySQLdb
conn = MySQLdb.connect (host = "localhost",
user = "root",
passwd = "",
db = "aaa")
cursor = conn.cursor ()
cursor.execute ("select * from bbb limit 1")
row = cursor.fetchone ()
print row
cursor.close ()
conn.close ()

def application(environ, start_response):
start_response('200 OK', [('content-type', 'text/html')])
return row


error_log:



[Fri May 10 16:04:07 2013] [info] mod_wsgi (pid=3692): Attach interpreter ''.
[Fri May 10 16:04:20 2013] [info] mod_wsgi (pid=3691): Create interpreter 'localhost.localdomain|/0'.
[Fri May 10 16:04:20 2013] [info] [client 127.0.0.1] mod_wsgi (pid=3691, process='', application='localhost.localdomain|/0'): Loading WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] (1, 'aaaaaa')
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] mod_wsgi (pid=3691): Exception occurred processing WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] TypeError: sequence of byte string values expected, value of type int found









share|improve this question
























  • Your return statement is breaking it.
    – Blender
    May 10 '13 at 23:12










  • so, what's the code?
    – user2371516
    May 10 '13 at 23:12










  • is it suppose to be in a ? my other hello world examples have.. return [output]
    – user2371516
    May 10 '13 at 23:13










  • The first element in row is an integer. return [repr(row)] should work.
    – Blender
    May 10 '13 at 23:14










  • so, how can i select this comment as "answered" . ? it worked fine.
    – user2371516
    May 10 '13 at 23:15















up vote
-1
down vote

favorite












cli:



[root@localhost 0]# python test13.wsgi
(1, 'aaaaaa')
[root@localhost 0]#


apache:




Internal Server Error




full script code:



import MySQLdb
conn = MySQLdb.connect (host = "localhost",
user = "root",
passwd = "",
db = "aaa")
cursor = conn.cursor ()
cursor.execute ("select * from bbb limit 1")
row = cursor.fetchone ()
print row
cursor.close ()
conn.close ()

def application(environ, start_response):
start_response('200 OK', [('content-type', 'text/html')])
return row


error_log:



[Fri May 10 16:04:07 2013] [info] mod_wsgi (pid=3692): Attach interpreter ''.
[Fri May 10 16:04:20 2013] [info] mod_wsgi (pid=3691): Create interpreter 'localhost.localdomain|/0'.
[Fri May 10 16:04:20 2013] [info] [client 127.0.0.1] mod_wsgi (pid=3691, process='', application='localhost.localdomain|/0'): Loading WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] (1, 'aaaaaa')
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] mod_wsgi (pid=3691): Exception occurred processing WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] TypeError: sequence of byte string values expected, value of type int found









share|improve this question
























  • Your return statement is breaking it.
    – Blender
    May 10 '13 at 23:12










  • so, what's the code?
    – user2371516
    May 10 '13 at 23:12










  • is it suppose to be in a ? my other hello world examples have.. return [output]
    – user2371516
    May 10 '13 at 23:13










  • The first element in row is an integer. return [repr(row)] should work.
    – Blender
    May 10 '13 at 23:14










  • so, how can i select this comment as "answered" . ? it worked fine.
    – user2371516
    May 10 '13 at 23:15













up vote
-1
down vote

favorite









up vote
-1
down vote

favorite











cli:



[root@localhost 0]# python test13.wsgi
(1, 'aaaaaa')
[root@localhost 0]#


apache:




Internal Server Error




full script code:



import MySQLdb
conn = MySQLdb.connect (host = "localhost",
user = "root",
passwd = "",
db = "aaa")
cursor = conn.cursor ()
cursor.execute ("select * from bbb limit 1")
row = cursor.fetchone ()
print row
cursor.close ()
conn.close ()

def application(environ, start_response):
start_response('200 OK', [('content-type', 'text/html')])
return row


error_log:



[Fri May 10 16:04:07 2013] [info] mod_wsgi (pid=3692): Attach interpreter ''.
[Fri May 10 16:04:20 2013] [info] mod_wsgi (pid=3691): Create interpreter 'localhost.localdomain|/0'.
[Fri May 10 16:04:20 2013] [info] [client 127.0.0.1] mod_wsgi (pid=3691, process='', application='localhost.localdomain|/0'): Loading WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] (1, 'aaaaaa')
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] mod_wsgi (pid=3691): Exception occurred processing WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] TypeError: sequence of byte string values expected, value of type int found









share|improve this question















cli:



[root@localhost 0]# python test13.wsgi
(1, 'aaaaaa')
[root@localhost 0]#


apache:




Internal Server Error




full script code:



import MySQLdb
conn = MySQLdb.connect (host = "localhost",
user = "root",
passwd = "",
db = "aaa")
cursor = conn.cursor ()
cursor.execute ("select * from bbb limit 1")
row = cursor.fetchone ()
print row
cursor.close ()
conn.close ()

def application(environ, start_response):
start_response('200 OK', [('content-type', 'text/html')])
return row


error_log:



[Fri May 10 16:04:07 2013] [info] mod_wsgi (pid=3692): Attach interpreter ''.
[Fri May 10 16:04:20 2013] [info] mod_wsgi (pid=3691): Create interpreter 'localhost.localdomain|/0'.
[Fri May 10 16:04:20 2013] [info] [client 127.0.0.1] mod_wsgi (pid=3691, process='', application='localhost.localdomain|/0'): Loading WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] (1, 'aaaaaa')
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] mod_wsgi (pid=3691): Exception occurred processing WSGI script '/0/test13.wsgi'.
[Fri May 10 16:04:20 2013] [error] [client 127.0.0.1] TypeError: sequence of byte string values expected, value of type int found






python python-2.7 mod-wsgi wsgi mysql-python






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Nov 11 at 13:33









Cœur

17.2k9102142




17.2k9102142










asked May 10 '13 at 23:09







user2371516



















  • Your return statement is breaking it.
    – Blender
    May 10 '13 at 23:12










  • so, what's the code?
    – user2371516
    May 10 '13 at 23:12










  • is it suppose to be in a ? my other hello world examples have.. return [output]
    – user2371516
    May 10 '13 at 23:13










  • The first element in row is an integer. return [repr(row)] should work.
    – Blender
    May 10 '13 at 23:14










  • so, how can i select this comment as "answered" . ? it worked fine.
    – user2371516
    May 10 '13 at 23:15


















  • Your return statement is breaking it.
    – Blender
    May 10 '13 at 23:12










  • so, what's the code?
    – user2371516
    May 10 '13 at 23:12










  • is it suppose to be in a ? my other hello world examples have.. return [output]
    – user2371516
    May 10 '13 at 23:13










  • The first element in row is an integer. return [repr(row)] should work.
    – Blender
    May 10 '13 at 23:14










  • so, how can i select this comment as "answered" . ? it worked fine.
    – user2371516
    May 10 '13 at 23:15
















Your return statement is breaking it.
– Blender
May 10 '13 at 23:12




Your return statement is breaking it.
– Blender
May 10 '13 at 23:12












so, what's the code?
– user2371516
May 10 '13 at 23:12




so, what's the code?
– user2371516
May 10 '13 at 23:12












is it suppose to be in a ? my other hello world examples have.. return [output]
– user2371516
May 10 '13 at 23:13




is it suppose to be in a ? my other hello world examples have.. return [output]
– user2371516
May 10 '13 at 23:13












The first element in row is an integer. return [repr(row)] should work.
– Blender
May 10 '13 at 23:14




The first element in row is an integer. return [repr(row)] should work.
– Blender
May 10 '13 at 23:14












so, how can i select this comment as "answered" . ? it worked fine.
– user2371516
May 10 '13 at 23:15




so, how can i select this comment as "answered" . ? it worked fine.
– user2371516
May 10 '13 at 23:15












1 Answer
1






active

oldest

votes

















up vote
0
down vote



accepted










application should return an iterable of strings. Yours returns a tuple (which is an iterable) of an integer and a string, which won't work:



TypeError: sequence of byte string values expected, value of type int found


Change that return line to:



return [repr(row)]





share|improve this answer





















    Your Answer






    StackExchange.ifUsing("editor", function () {
    StackExchange.using("externalEditor", function () {
    StackExchange.using("snippets", function () {
    StackExchange.snippets.init();
    });
    });
    }, "code-snippets");

    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "1"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f16492047%2fpython-mod-wsgi-works-via-cli-but-not-via-apache%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown
























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes








    up vote
    0
    down vote



    accepted










    application should return an iterable of strings. Yours returns a tuple (which is an iterable) of an integer and a string, which won't work:



    TypeError: sequence of byte string values expected, value of type int found


    Change that return line to:



    return [repr(row)]





    share|improve this answer

























      up vote
      0
      down vote



      accepted










      application should return an iterable of strings. Yours returns a tuple (which is an iterable) of an integer and a string, which won't work:



      TypeError: sequence of byte string values expected, value of type int found


      Change that return line to:



      return [repr(row)]





      share|improve this answer























        up vote
        0
        down vote



        accepted







        up vote
        0
        down vote



        accepted






        application should return an iterable of strings. Yours returns a tuple (which is an iterable) of an integer and a string, which won't work:



        TypeError: sequence of byte string values expected, value of type int found


        Change that return line to:



        return [repr(row)]





        share|improve this answer












        application should return an iterable of strings. Yours returns a tuple (which is an iterable) of an integer and a string, which won't work:



        TypeError: sequence of byte string values expected, value of type int found


        Change that return line to:



        return [repr(row)]






        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered May 10 '13 at 23:17









        Blender

        204k36330397




        204k36330397






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Stack Overflow!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.





            Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


            Please pay close attention to the following guidance:


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f16492047%2fpython-mod-wsgi-works-via-cli-but-not-via-apache%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            Florida Star v. B. J. F.

            Error while running script in elastic search , gateway timeout

            Adding quotations to stringified JSON object values