【发布时间】:2013-05-29 11:39:57
【问题描述】:
我需要用相同的 url 使用 DjangoCMS 和 prestashop,例如:
localhost/shop = prestashop<br>
localhost/everythingElse = DjangoCMS<br>
我的 prestashop 安装在 /var/www/prestashop,djangoCMS 安装在 /var/www/djangoCMS。
Linux Mint 14 64 位、apache2、mod_python、wsgi...
我试过这个配置:
<VirtualHost *:80>
DocumentRoot "/var/www/djangoCMS"
ServerName localhost
WSGIScriptAlias / "/var/www/djangoCMS/djangoCMS/apache/django.wsgi"
<Directory "/var/www/djangoCMS/djangoCMS/apache">
Options +ExecCGI
Order allow,deny
Allow from all
</Directory>
<VirtualHost *:80>
DocumentRoot "/var/www/prestashop"
ServerName php.localhost
<Directory "/var/www/prestashop">
Options Indexes FollowSymLinks
AllowOverride None
Order Deny,Allow
Allow from all
</Directory>
Django 在 localhost 上运行良好,但我无法访问 php.localhost:糟糕!谷歌浏览器找不到 php.localhost
【问题讨论】:
-
可能
php.localhost没有正确解析。您需要在/etc/hotsts文件中添加一个条目,或者如果您使用 dns 服务器配置它以正确解析它,并在您的 apache 配置中正确设置NameVirtualHost指令。 -
谢谢 ;) 我在端口 8000 (./manage runserver 8000) 上使用 django,并且在 /etc/hosts 上添加了 php.localhost。现在我必须从 url 中删除 :8000 。再次感谢你的帮助。祝你有美好的一天。
-
Runserver 只是开发服务器,不适合生产。如果您想从 URL 中删除 :8000,请不要使用 Runserver,而是使用 Apache。
-
我见过这样构建的网站,但它从来没有很好地体现出来。要么你用两种不同的语言复制大量相同的交互,要么你有两个功能和工作方式不同的网站。
标签: php python django apache prestashop