我安装了一个WSGI脚本/app.如果我要求/app/resource,我得到正确答复.但我也在错误日志中输入了一个条目,就像我要求的那样/resource.什么可能导致这个?
我在AWS EC2上使用Apache 2.4 + mod_wsgi部署了Flask应用程序:
/my/app/pathapp.wsgi文件存在/var/www/wsgi并指向/my/app/pathwww.website.comvhost 的Apache配置指向WSGI脚本:WSGIScriptAlias /app /var/www/wsgi/app.wsgi当我获取时www.website.com/app/some_resource/...,我通过代码收到该资源的预期响应200.
但是,当我检查Apache错误日志时,我会发现拒绝请求的大量条目,例如:
[authz_core:error] [pid XXXXX] [client XXXXX] XXXXX: client denied by server configuration: /var/www/html/some_resource
记录的错误与所述请求一一对应,如上所述,请求返回200.
现在,/var/www/html是默认的DocumentRoot,但请求被发送到该/app位置,并由WSGI应用程序通过alias指令正确传递和处理.
所以:为什么我可以在我的错误日志中找到这些条目,其中/app路径被删除,并且在根上直接附加(并正确拒绝)的资源路径?
在评论中回应格雷厄姆的建议:
一位同事告诉我他在AWS EC2实例上遇到了同样的问题.