我目前正在开发一个项目,需要运行四个不同的 PHP 程序(均带有 MySQL 后端)和一个 Django 项目。
当前计划:
- XenForo (forums.domain.com) [PHP 论坛]
- OSQA (qa.domain.com) [Django/Python QA 站点]
- PHPFox (social.domain.com) [PHP 社交网络]
- BugTrackr (bugs.domain.com) [PHP 错误跟踪器,定制]
- WordPress (www.domain.com) [PHP CMS]
这如何可能,以便它们能够在同一个 Apache 上共存,彼此相处融洽,并且不会每次都使系统崩溃n小时?
答案1
对于 Django,我认为你需要mod_proxy
在 Apache 中使用并创建一个VirtualHost
.
<VirtualHost *:80>
ServerName qa.domain.com
ProxyPreserveHost on
ProxyPass / http://localhost:DJANGO_PORT_HERE/
</VirtualHost>
不要忘记取消注释mod_proxy
/mod_proxy_http
中httpd.conf
对于其他应用程序,VirtualHost
也只需创建一个简单的即可。
这Django 文档建议您使用mod_wsgi
,将其添加到您的httpd.conf
:
WSGIScriptAlias / /path/to/mysite.com/mysite/wsgi.py
WSGIPythonPath /path/to/mysite.com
<Directory /path/to/mysite.com/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
https://docs.djangoproject.com/en/1.6/howto/deployment/wsgi/modwsgi/