2012-07-17 34 views
12

在我的/var/www我有許多網站(goodsite,badsite,uglysite)。現在他們訪問mydomain.com/goodsite,等等。apache map單個子域到文件夾

我想要的是一個網站尤其是uglysite,要訪問uglysite.mydomain.com - 其他人保持原樣。

我已經嘗試了各種各樣的方法擺弄htaccess(在/var/www)。注意我已經啓用了mod-rewrite並啓用了mod vhost-alias。

RewriteEngine on 
RewriteCond %{HTTP_HOST} ^uglysite\.mydomain\.com$ [NC] 
RewriteCond %{REQUEST_URI} !^/uglysite/ 
RewriteRule ^(.*)$ /uglysite/$1 [L] 

什麼最終情況是,既mydomain.com和uglysite.mydomain.com始終映射到同一件事(即指數在/var/www)。我嘗試添加一個新的虛擬主機,並驚奇地發現uglysite.mydomain.com映射正確,但隨後mydomain.com也直接映射到uglysite。

<Virtualhost uglysite.mydomain.com:80> 
     ServerName uglysite.mydomain.com 
     ServerAdmin [email protected] 
     DocumentRoot "/var/www/" 
     AccessFileName .htaccess 
     <Directory "/var/www/uglysite"> 
       Order allow,deny 
       Allow from All 
       AllowOverride All 
     </Directory> 
</VirtualHost> 

上述內容已添加到啓用了網站的/ 000默認文件中。這使uglysite.mydomain.com正常工作,但隨後mydomain.com映射到相同的事情!

有沒有一種簡單的方法來做我打算做的事?提前致謝。

回答

15

你應該做uglysite到第二個文件,而不是修改000默認

因此,乘坐000,默認的文件的副本,改變,因爲你做了有子域和修改目錄爲/路徑/到/網站

000默認:

<Virtualhost *:80> 
     ServerName mydomain.com 
     ServerAdmin [email protected] 
     ServerAlias mydomain.com 
     DocumentRoot "/var/www/goodsite" 
     AccessFileName .htaccess 
     <Directory "/var/www/goodiste"> 
       Order allow,deny 
       Allow from All 
       AllowOverride All 
     </Directory> 
</VirtualHost> 

uglysite:

<Virtualhost *:80> 
     ServerName uglysite.mydomain.com 
     ServerAlias uglysite.mydomain.com 
     ServerAdmin [email protected] 
     DocumentRoot "/var/www/uglysite" 
     AccessFileName .htaccess 
     <Directory "/var/www/uglysite"> 
       Order allow,deny 
       Allow from All 
       AllowOverride All 
     </Directory> 
</VirtualHost> 

還要注意的是,上述樣品中,我已經修改了DocumentRoot指向你想要的文件從

編輯服務的目錄:virtualhosts設置爲*:80因爲你的網站指向你自己的IP無論如何

+0

謝謝我現在就試試看。 – 2012-07-17 13:17:11

+0

你應該在/ etc/apache2/sites-available btw和symlinking('ln -s sites-available/uglysite sites-enabled/uglysite')中將此文件製作成啓用網站的文件 – arcyqwerty 2012-07-17 13:18:12

+0

我是否需要將它明確包含在任何位置? – 2012-07-17 13:18:45