我正在尝试使用守护进程模式在mod_wsgi上在Apache上部署2个django项目,但是现在当我尝试加载页面时,我只得到404。
这两个站点都托管在同一台服务器上,两者都在端口80上。可用站点中的两个条目如下:
<VirtualHost *:80>
ServerAdmin admin@site1.com
ServerName site1.com
ServerAlias www.site1.com
DocumentRoot /var/www/site1.com
ErrorLog /srv/www/site1.com/logs/error.log
CustomLog /srv/www/site1.com/logs/access.log combined
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@site2.org
ServerName site2.org
ServerAlias www.site2.org
DocumentRoot /var/www/site2.org
ErrorLog /srv/www/site2.org/logs/error.log
CustomLog /srv/www/site2.org/logs/access.log combined
</VirtualHost>
在我的httpd.conf中,
WSGIDaemonProcess site1.com python-path=/usr/local/www/site1/
WSGIProcessGroup site1.com
WSGIScriptAlias site1.com/blog /usr/local/www/site1/site1/wsgi.py
WSGIDaemonProcess site2.org python-path=/usr/local/www/site2/
WSGIProcessGroup site2.org
WSGIScriptAlias site2.org/ /usr/local/www/site2/site2/wsgi.py
<Directory /usr/local/www/site1/site1>
<Files wsgi.py>
Order deny,allow
Allow from all
</Files>
</Directory>
<Directory /usr/local/www/site2/site2>
<Files wsgi.py>
Order deny, allow
Allow from all
</Files>
</Directory>
我从Django文档中取出httpd.conf
内容,但它仍然无法正常工作。 site1.com/blog给了我一个404,而site2.org给了我一个通用的Apache filetree。我在这里缺少什么?
答案 0 :(得分:0)
如果你有一个site-available目录,你就是在Debian派生的发行版上,你根本就不应该编辑httpd.conf。您放入httpd.conf的所有内容都应该放在site-available中的相关文件中。