Teds's Blog

2006-03-23

apache的VirtualHost真是神奇   #

有兩個domain name ,dn1 , dn2 一個 ip ..ip1
她們的對映是
dn1 -> ip1
dn2 -> ip1
ip -> dn1
其中dn2是最近加入的
目標是要讓dn1 , dn2可以連到不同的網頁
先說明一下,我的環境是 Apache/1.3.34 (Unix) PHP/4.4.2

我最後研究出來的作法是
Listen ip1:80 這個給他註解掉,沒有影響
Bind * 也是一樣,沒有影響
(因為ip是同一組阿~.~)
NameVirtualHost * 還是被我注解掉...不會用Orz
然後在加上這幾句話


< VirtualHost dn1:80 >
ServerName dn1
< /VirtualHost>
< VirtualHost dn2:80 >
DocumentRoot /xxx/dn2/webroot
ServerName dn2
ErrorLog /var/log/dn2-error_log
CustomLog /var/log/dn2-access_log common
< /VirtualHost>

這樣就可以正常運作了

其中要注意的是
/var/log/dn2-error_log 和 /var/log/dn2-access_log 請先自行 touch
apache不會自動幫你自己建立,如果找不到 ,就會自動死給你看>.<"
另外不知為何..我沒有辦法使用 logs/dn2-error_log 這種格式..
他老是一直報說找不到檔案
注意在< VirtualHost dn1:80 >裡面沒有設定 DocumentRoot
所以他會自動使用預設值

0 Comments:

張貼留言

<< Home