WSGI文件权限问题[重复]
Posted
技术标签:
【中文标题】WSGI文件权限问题[重复]【英文标题】:WSGI file permissions issue [duplicate] 【发布时间】:2020-04-24 04:41:24 【问题描述】:我已经阅读了有关类似问题的帖子,但它们似乎都略有不同,因此这篇帖子。
我有一个网站(例如 example.com)的域,它工作得很好。我现在正在创建一个子域(例如 sub.example.com)带有 Flask 应用程序(主域不是 Flask 应用程序),这也是连接到 SQLite 数据库(在同一文件夹中)。
为子域设置A记录后,访问子域地址时,我在浏览器中收到以下错误消息:“禁止访问。您无权访问此资源。”
我做错了什么?
Apache 的错误日志说:
[Mon Jan 06 15:48:21.300079 2020] [authz_core:error] [pid 12194] [client xxx.xxx.xxx.xxx:xxxxx] AH01630: client denied by server configuration: /home/user/show/application.wsgi
包含主 Flask 文件 (application.py) 的根文件夹的文件夹权限是drwxr-xr-x
(即755
),所有者和组是我的用户名。该文件夹以及静态和模板文件夹中的所有文件都是rwxr-xr-x
(即755
)。由于 Apache 错误日志提到了 application.wsgi,我仔细检查了它的权限,它们也是 755
。
这是 application.wsgi:
#!/usr/bin/python
import sys
import logging
logging.basicConfig(stream=sys.stderr)
sys.path.insert(0,"/home/user/show/")
from show import app as application
application.secret_key = '*******'
(作为脚注,我是否可能需要在环境变量中设置密钥 - 这是问题所在吗?如果是这样,在这种情况下我该怎么做?)
这是子域的 .conf:
<VirtualHost *:80>
ServerName sub.example.com
ServerAdmin admin@example.com
WSGIScriptAlias / /home/user/show/application.wsgi
<Directory /home/user/show/>
Order allow,deny
Allow from all
</Directory>
Alias /static /home/user/show/static
<Directory /home/user/show/static/>
Order allow,deny
Allow from all
</Directory>
ErrorLog $APACHE_LOG_DIR/error.log
LogLevel warn
CustomLog $APACHE_LOG_DIR/access.log combined
</VirtualHost>
【问题讨论】:
【参考方案1】:在这里找到解决方案:
Apache2: 'AH01630: client denied by server configuration'
替换所有实例
Order allow,deny
Allow from all
与
Require all granted
【讨论】:
以上是关于WSGI文件权限问题[重复]的主要内容,如果未能解决你的问题,请参考以下文章