如何在带mod_python的apache2上共同托管django应用和php5?
我在Ubuntu服务器/ Linode VPS上安装并运行了django+python+apache2+mod_python。php5也已经安装并配置好了。我们没有像example.com这样的域名,只有一个IP地址。所以我的apache配置文件看起来是这样的:
ServerAdmin webmaster@localhost DocumentRoot /var/www
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE mysite.settings
PythonOption django.root /mysite
PythonPath "['/var/www/djangoprojects',] + sys.path"
PythonDebug On
</Location>
我想安装vtiger,所以如果我把我的配置文件改成这样:
<VirtualHost *:80>
DocumentRoot /var/www/vtigercrm/
ErrorLog /var/log/apache2/vtiger.error_log
CustomLog /var/log/apache2/vtiger.access_log combined
<Directory /var/www/vtigercrm>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
这样vtiger这个基于php的应用就能正常工作了,但django的应用就无法访问了。我该如何让这两个应用在一个文件中共存呢?我不能使用虚拟主机或子域名。不过我可以用不同的端口号。
大家有什么建议吗?
祝好,
安库尔·古普塔
1 个回答
1
我需要测试一下,但这个应该能让你的Django项目在/mysite/这个地址运行:
<VirtualHost *:80>
DocumentRoot /var/www/vtigercrm/
ErrorLog /var/log/apache2/vtiger.error_log
CustomLog /var/log/apache2/vtiger.access_log combined
<Directory /var/www/vtigercrm>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>
<Location "/mysite/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE mysite.settings
PythonOption django.root /mysite
PythonPath "['/var/www/djangoprojects',] + sys.path"
PythonDebug On
</Location>
</VirtualHost>