在Apache虚拟主机上部署Django:404

时间:2013-03-19 10:33:48

标签: django apache

我知道有很多文章都在讨论这个问题,但是当我通过Apache虚拟主机部署Django网站时,我一直遇到404错误。这是我的.conf文件:

Listen 8001
<VirtualHost *:8001>
  ServerName www.myhostname.com/basic
  ServerAdmin caisj@example.com

  ProxyRequests Off
  <Proxy *>
    Order deny,allow
    Allow from all
  </Proxy>

  DocumentRoot /home/browser/BASIC/basic

  Alias /static /home/browser/BASIC/basic/static
  Alias /media /home/browser/BASIC/_py/lib/python2.6/site-packages/Django-1.4-py2.6.egg/django/contrib/admin/media

  WSGIScriptAlias /basic /home/browser/BASIC/basic/basic.wsgi
  ErrorLog /home/browser/BASIC/basic/log/basic.error.log

  LogLevel info
  CustomLog /home/browser/BASIC/basic/log/basic.access.log combined
</VirtualHost>

我尝试了“ServerName”和其他参数的不同组合,但在访问www.myhostname.com/basic时,我一直收到404错误。 Apache成功重启,日志文件不包含任何线索。

或者任何人都可以帮忙告诉在哪里发现错误?感谢。

1 个答案:

答案 0 :(得分:1)

您已将此设置为侦听端口8001并以/basic为根,因此您需要访问www.myhostname.com:8001/basic

请注意,您不应将DocumentRoot设置为Django文件的位置。没有必要提供Django应用程序,它可能存在安全风险 - 错误配置可能意味着您的代码文件(包括任何数据库密码)可能会被提供。