- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试使用 mod_cgid 模块在 Apache 中部署我的 web.py 应用程序。
我在 urls.py 中定义了这样的 url
urls = (
'/app/', 'index.index',
'/', 'index.index'
)
这是我的应用程序启动 webstart.py 的地方
import web, urls, sys, os
def notfound():
return web.notfound()
if __name__ == "__main__":
app = web.application(urls.urls, globals())
app.notfound = notfound
app.run()
我的 Apache 配置如下所示
<Directory "dirname">
Options +ExecCGI +FollowSymLinks +Indexes
Order allow,deny
Allow from all
Require all granted
DirectoryIndex webstart.py
</Directory>
当我尝试使用 localhost/app/访问我的服务器时,它总是显示未找到的页面,并且在日志中,我看到消息“警告:SCRIPT_NAME 与 REQUEST_URI 不匹配”
然后我尝试在未找到的页面中打印这两个变量,我分别得到了/app/webstart.py 和/app/。
当我使用 localhost/app/访问我的应用程序时,如何让它工作?
最佳答案
DirectoryIndex webstart.py
您已在 Apache 配置中指定了用于目录访问的默认主页。因此,当您访问某个目录(例如 URL)时,例如。 localhost/app/
,Apache 将其视为 localhost/app/webstart.py
,然后将请求发送到 web.py。尝试从 Apache 配置中删除该条目并重新启动 Apache 守护进程。
更新:
当你 deploy web.py through CGI ,您获得了服务器 http://localhost/webstart.py
的条目,前提是您已将 ScriptAlias
ed /
作为您的 CGI脚本目录。 webstart.py 中的路由定义位于该 url 之后。因此,您应该访问 http://localhost/webstart.py/app/
来获取 /app/
路由。您需要一些 mod_rewrite
定义来获取像 http://localhost/app/
这样的 URL。
关于python - SCRIPT_NAME 与 apache cgid 模块中的 web.py 不匹配 REQUEST_URI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15676467/
在内部网站上更新到 Apache 2.4.10 后,错误日志不断显示如下消息。 [Mon Jan 19 09:04:40.191633 2015] [cgid:error] [pid 4915436:
我正在尝试使用 mod_cgid 模块在 Apache 中部署我的 web.py 应用程序。 我在 urls.py 中定义了这样的 url urls = ( '/app/', 'index.i
我是一名优秀的程序员,十分优秀!