Ich versuche, eine web.py
Anwendung auf meinem Apache-Server zu starten. Aber ich habe einen Wsgi-Fehler erhalten, wenn ich versuche, einen REST-Dienst aufzurufen. Unter meinem Code:Kann Web.py-Anwendung nicht aufrufen: wsgifunc() fehlgeschlagen
[Thu Oct 27 15:54:28.614753 2016] [cgi:error] [pid 2979] [client 130.104.xxx.xxx:62194] AH01215: Traceback (most recent call last):, referer: http://test.dial.uclouvain.be/swagger/
[Thu Oct 27 15:54:28.614841 2016] [cgi:error] [pid 2979] [client 130.104.xxx.xxx:62194] AH01215: File "/var/www/html/api/dilbert/api.py", line 377, in <module>, referer: http://localhost/swagger/
[Thu Oct 27 15:54:28.614856 2016] [cgi:error] [pid 2979] [client 130.104.xxx.xxx:62194] AH01215: application.run(), referer: http://localhost/swagger/
[Thu Oct 27 15:54:28.614877 2016] [cgi:error] [pid 2979] [client 130.104.xxx.xxx:62194] AH01215: AttributeError: 'function' object has no attribute 'run', referer: http://localhost/swagger/
[Thu Oct 27 15:54:28.636844 2016] [cgi:error] [pid 2979] [client 130.104.xxx.xxx:62194] End of script output before headers: api.py, referer: http://localhost/swagger/
Wenn ich nur es funktioniert "web.application(urls, globals())
" verwenden:
urls = (
'/publication/(.*)', 'PublicationStats',
'/author/(.*)', 'AuthorStats',
'/department/(.*)', 'DepartmentStats'
)
application = web.application(urls, globals()).wsgifunc()
...
if __name__ == "__main__":
#web.config.debug = True
application.run()
Als ich versuchte, meinen REST api wie /author/Smith, John
zu nennen, mein Apache-Server einen seltsamen Fehler über wsgi erzeugen. Aber ich muss wsgifunc verwenden, weil ich auf web.ctx.env
variable zugreifen muss.
mod_wsgi
ist gut auf Apache installiert. Es scheint gut zu funktionieren ... ich hoffe.
Danke für Ihre Hilfe
Renaud
Das klingt für mich wie der entsprechende Handler für das Skript nicht verwendet wird . Haben Sie in Ihrer '.htaccess' Datei' SetHandler wsgi-script' für dieses Skript? – sytech