3

我正在尝试将 Django 与 Apache(和 mod_wsgi)一起使用。使用默认的 Django 网络服务器一切顺利,但现在尝试加载页面时出现 403(禁止访问)错误。我在这里搜索了以前的帖子并阅读了官方文档,但那里的解决方案没有帮助。

以下是我的 httpd.conf 中的行:

WSGIScriptAlias / /home/karlis/django/apache/django.wsgi

<Directory /home/karlis/django/apache>
Order allow,deny
Allow from all
</Directory>

Alias /media/ /home/karlis/django/media

<Directory /home/karlis/django/media>
Order deny,allow
Allow from all
</Directory>

权限设置为 770,并且为 /home/karlis/django 下的所有文件夹设置了粘性位。我有 django 1.2.3、mod_wsgi 3.2、apache 2.2.15 并运行 Arch Linux。

我在这里做错了什么?

提前致谢!-skazhy

4

3 回答 3

1

Apache 以特殊用户身份运行,它无法读取权限为 770 的内容。

观看演讲:

http://code.google.com/p/modwsgi/wiki/WhereToGetHelp?tm=6#Conference_Presentations

这解释了有关权限的事情。

解决问题的关键是 Apache 错误日志中出现的错误消息。您甚至没有说明您在日志文件中收到的错误消息。链接到的演讲显示了这些错误消息可能是什么以及它们的含义。

于 2010-09-20T07:27:50.050 回答
1

还有另一个问题:

检查您的 httpd.conf 文件以获取以下配置:

<IfModule mime_module>
      AddHandler cgi-script .cgi .pl .py
</IfModule>

这将导致错误。

.py 不得配置为 CGI 脚本

于 2014-01-23T17:06:44.863 回答
0

试试这个,而不是你的目录语句:

<Location />
    Order Allow,Deny
    Allow from all
</Location>
于 2010-09-20T07:45:35.657 回答