Apache-2.2
mod_wsgi + cherrypy = 404 - 找不到路徑’/index.wsgi/'
.htaccess :
AddHandler wsgi-script .wsgi RewriteEngine On RewriteBase / RewriteRule ^(media/.*)$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ /index.wsgi/$1 [QSA,L,PT]
index.wsgi :
import atexit import threading import cherrypy cherrypy.config.update({'environment': 'embedded'}) if cherrypy.engine.state == 0: cherrypy.engine.start(blocking=False) atexit.register(cherrypy.engine.stop) class Root: def index(self): return "..." index.exposed = True def default(self): return "default" index.exposed = True application = cherrypy.tree.mount(Root(), "/")
- 這是一個共享主機,我無權訪問 apache
- 我不允許使用 WSGIScriptAlias
404錯誤來自cherrypy(由botton上的cherrypy驅動),所以我認為apache正在正確呼叫.wsgi文件,它似乎也通過了/index.wsgi/,並且cherrypy不知道如何處理它。
誰能幫我這個?
我以前從未部署過櫻桃應用程序,這是最好/唯一/推薦的方法嗎?
提前致謝。
如果在 .htaccess 中將 RewriteBase 設置為“/”,您可能需要使用:
RewriteRule ^(.*)$ /index.wsgi$1 [QSA,L,PT]