我把它配置正确,但后来我决定重新安装我的Debian(顺便提一下从wheezy切换到jessie版本).这是问题所在:
我有一个python mod_wsgi应用程序:/mnt/doc/Python/www/index.py
.
$ ls -l / | grep mnt drwxr-xr-x 3 root root 4096 sty 12 09:36 mnt $ ls -l /mnt drwxrwxrwx 1 sven sven 20480 sty 7 19:34 doc $ ls -l /mnt/doc/Python/www/ total 12 drwxrwxrwx 1 sven sven 4096 Jan 3 19:52 core -rwxrwxrwx 1 sven sven 0 Dec 22 13:25 __init__.py drwxrwxrwx 1 sven sven 0 Dec 24 00:11 silva -rwxrwxrwx 1 sven sven 984 Dec 22 13:47 silva.py -rwxrwxrwx 1 sven sven 697 Dec 25 13:32 txt
所有子目录都具有相同的权限/mnt/doc
,但在尝试打开网站时仍然会收到403 Forbidden错误.它的配置如下:
WSGIScriptAlias /huh /mnt/doc/Python/www/index.pyOrder allow,deny Allow from all
尝试打开页面时,Apache2日志中会显示以下消息:
[authz_core:error] [pid 15269:tid 140518201730816] [client ::1:44130] AH01630: client denied by server configuration: /mnt/doc/Python/www/index.py
我很确定我完全复制了以前的配置.最近发生了什么变化?
编辑:我忽略了添加我使用Python 3.3和libapache2-mod-wsgi-py3 Debian软件包.
我终于解决了.pxl是半对的,因为不仅Allow from all
应该被替换Require all granted
,而且也Order allow,deny
不再需要.事实证明是我的错误的原因.完整的脚本别名配置应该是这样的:
WSGIScriptAlias /huh /mnt/doc/Python/www/index.py <Directory /mnt/doc/Python/www> Require all granted </Directory>
它有效.