我有一个基于Django的站点,由Apache2提供服务。我的虚拟主机配置为我的域(称为example.com)为我的wsgi应用程序服务。
我还希望使用Apache在example.com/blog上提供Wordpress站点。我将如何使用Apache在/ blog上提供Wordpress网站?目前,我的请求被Django捕获,因为/博客不在我的Django网址中,我得到了404。
答案 0 :(得分:2)
在Django文档(https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/modwsgi/)中,他们给出了这个例子:
Alias /media/ /path/to/mysite.com/media/
Alias /static/ /path/to/mysite.com/static/
<Directory /path/to/mysite.com/static>
Require all granted
</Directory>
<Directory /path/to/mysite.com/media>
Require all granted
</Directory>
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py
<Directory /path/to/mysite.com/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
这适用于静态文件,但也适用于您的博客。
答案 1 :(得分:0)
在Apache conf中将这些行添加到VirtualHost:
Alias /blog /var/www/example.com/blog/
<Directory /var/www/example.com/blog>
Require all granted
</Directory>
答案 2 :(得分:0)
您的问题是,在您进入Django URL路由器之前,您不会识别博客引用。虽然您可以执行网址规则+视图来执行重定向,但最简单的方法是创建一个新的子域,例如blog.mydomain.com,并配置Apache来处理其他站点。我为所有Django网站都这样做,它运行正常。