当我将 / home / django / mysite 移动到 / var / www / html / mysite 时,和 chown -R apache:apache ,可行。但是在主目录中我得到了403禁止。
我花了6个小时试图让它发挥作用。我发现它在/ var / www / html中工作的巨大进步,因为我知道我的所有“配置”设置都是正确的。
这是我的httpd.conf
(第一个设置必须添加以停止503内部服务器错误)
WSGISocketPrefix /var/run/wsgi
<VirtualHost 208.115.206.227:80>
WSGIDaemonProcess django user=django group=django python-path=/home/django/mysite
WSGIProcessGroup django
ServerAdmin webmaster@mktrn.net
ServerName endor.mktrn.net
WSGIScriptAlias / /home/django/mysite/mysite/wsgi.py
<Directory />
Options FollowSymLinks
AllowOverride None
Order deny,allow
Allow from all
</Directory>
<Directory /home/django/mysite/mysite>
<Files wsgi.py>
Order allow,deny
Allow from all
</Files>
</Directory>
</VirtualHost>
再说一次,如果我只用/ var / www / html替换/ home / django / mysite,上面的工作就会起作用。
我在用户django 下运行mod_wsgi作为守护进程 - 所以我不认为是这样。我究竟做错了什么?我知道放入/ var / www / html是不明智的,即使我没有文档根目录,所以真的想弄清楚这一点!
答案 0 :(得分:1)
诸如/ home / django之类的主目录通常不会被其他人读取,因此Apache运行的用户将无法看到该目录,因此将禁止访问。这就是为什么当你把它移到其他地方时它会起作用。