2009-07-22 66 views
2

我爲一本雜誌做了一個django網站,它在mag.org/django-site找到。舊網站仍位於mag.org/httpdocs(由mediatemple託管)。django配置,mod_rewrite,mod_alias

我喜歡它,所以打到www.mag.org會打開Django站點(如目前情況,配置如此在conf文件中),而命中archive.mag.org服務舊站點來自httpdocs,也就是說,它是由Apache而不是mod_python提供的。

這可能通過mod-rewrite或mod-alias來實現嗎?

非常感謝。

回答

2

你不需要這些。只需設置您的虛擬主機,以便從httpdocs和www。*提供的archive. *通過mod_python提供服務(儘管我真的推薦您通過mod_wsgi爲Django提供服務)。

例如:

<VirtualHost "*:80"> 
    ServerName www.mag.org 
    SetHandler python-program 
    PythonHandler django.core.handlers.modpython 
    SetEnv DJANGO_SETTINGS_MODULE mysite.settings 
    PythonOption django.root /mysite 
</VirtualHost> 

<VirtualHost "*:80"> 
    ServerName archive.mag.org 
    DocumentRoot "/var/apache2/httpdocs" 
</VirtualHost> 
+0

您也可以將相應的日誌行添加到舊網站,以確定您真的需要將存檔保持在線狀態的時間。 – wlashell 2009-07-22 20:52:34

1

是的,就使用mod_rewrite,FE:

Options +FollowSymLinks 
Options +SymlinksIfOwnerMatch 

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^www.mag.org$ 
RewriteRule ^(.*)$ http://mag.org/django-site [R=301,L] 
RewriteCond %{HTTP_HOST} ^archive.mag.org$ 
RewriteRule ^(.*)$ http://mag.org/httpdocs [R=301,L] 

不幸的是,redirecion是對用戶可見,據我記得。

0

的DocumentRoot /var/www/vhosts/mag.org/httpdocs

是我所需要的,坐在那裏獨自一人在/var/www/vhosts/mag.org/subdomains/archive/vhost.conf

虛擬主機解決方案不適用於中間層,因爲每個vhost.conf已被分隔爲由plesk配置的虛擬主機。

感謝大家的幫助。