apache配置出現的問題
我的目的是「1) 實現基於域名的虛擬主機,第一個域名為www1.gdlc.com。對應目錄為/var/www/vhost1;第二個域名為www2.gdlc.com。對應目錄為/var/www/vhost2;必須使用DNS進行解析;」
我用的是虛擬的RedHat Linux系統,我的DNS能夠解析這兩個域,我在 apache的配置文件中加入
NameVirtualHost 192.168.2.1
<VirtualHost 192.168.2.1>
ServerName www1.gdlc.com
DocumentRoot 「/var/www/vhost1」
Options ExecCGI
<VirtualHost 192.168.2.1>
ServerName www2.gdlc.com
DocumentRoot 「/var/www/vhost2」
</VirtualHost>
我主機的ip為192.168.2.1,dns為192.1468.2.1(不是真實的環境,自己做伺服器又做客戶機)
重啟apache(service named restart),出現了:"Could not determine the server's fully qualified domain name,using 127.0.0.1 for ServerName",請問又誰遇到過這種情況,請幫忙解決,謝謝
《解決方案》
NameVirtualHost 192.168.2.1:80
<VirtualHost 192.168.2.1:80>
ServerName www1.gdlc.com
DocumentRoot 「/var/www/vhost1」
Options ExecCGI
<VirtualHost 192.168.2.1:80>
ServerName www2.gdlc.com
DocumentRoot 「/var/www/vhost2」
</VirtualHost>
另外錯誤是由於沒有設置ServerName,設置了就可以了
可以試試,有問題再發上來
《解決方案》
原帖由 yong_why 於 2007-9-24 09:58 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
NameVirtualHost 192.168.2.1:80
ServerName www1.gdlc.com
DocumentRoot 「/var/www/vhost1」
Options ExecCGI
ServerName www2.gdlc.com
DocumentRoot 「/var/www/vhost2」
另外錯誤是由於沒有 ...
好的,謝謝.但我想問,為什麼要在NameVirtualHost 192.168.2.1后在加上80埠號,我做的基於虛擬的主機,而不是基於不同埠的虛擬主機.
《解決方案》
原帖由 chengguowei27 於 2007-9-25 09:34 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
好的,謝謝.但我想問,為什麼要在NameVirtualHost 192.168.2.1后在加上80埠號,我做的基於虛擬的主機,而不是基於不同埠的虛擬主機.
我做的基於虛擬的主機,而不是基於不同埠的虛擬主機 何解?你要表達的意思沒有看明白 你的ip是一個 具體應該有基於埠和基於域名
基於IP的虛擬主機
《解決方案》
原帖由 xuledw 於 2007-9-25 10:08 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
我做的基於虛擬的主機,而不是基於不同埠的虛擬主機 何解?你要表達的意思沒有看明白 你的ip是一個 具體應該有基於埠和基於域名
基於IP的虛擬主機
哦,我重新配置了,還是出現哪個問題,我把我的整個配置寫在下面:
我的DNS配置為:
在 /etc/named.conf中加入:
zone "gdlc.com" IN {
type master;
file "gdlc.com.zone";
allow-update { none; };
};
zone "2.168.192.in-addr.arpa" IN {
type master;
file "192.168.2.zone";
allow-update { none; };
};
在/var/named/目錄下建了兩個對應的文件,分別為:gdlc.com.zone和192.168.2.zone
gdlc.com.zone的內容為:
$TTL 86400
@ IN SOA gdlc.com. root.gdlc.com. (
20070923
28800
14400
72000
86400 )
IN NS dns.gdlc.com.
IN MX 5 mail.gdlc.com.
IN MX 10 mail1.gdlc.com.
dns.gdlc.com. IN A 192.168.2.1
www.gdlc.com. IN A 192.168.2.10
www1 IN CNAME www
www2 IN CNAME www
mail IN A 192.168.2.1
mail1 IN A 192.168.2.34
192.168.2.zone的內容為:
$TTL 86400
@ IN SOA gdlc.com. root.gdlc.com. (
20070923
28800
14400
72000
86400 )
IN NS dns.gdlc.com.
1 IN PTR dns.gdlc.com.
10 IN PTR www.gdlc.com.
1 IN PTR mail.gdlc.com.
34 IN PTR mail1.gdlc.com.
在/etc/resolv.conf中加入
nameserver 192.168.2.1
nameserver 127.0.0.1
重啟DNS,用host 命令測試成功,能正反解
我在Apache伺服器的主配置文件中加入
NameVirtualHost 192.168.2.10
<VirtualHost 192.168.2.10>
ServerName www1.gdlc.com
DocumentRoot /var/www/vhost1
</VirtualHost>
<VirtualHost 192.168.2.10>
ServerName www2.gdlc.com
DocumentRoot /var/www/vhost2
</VirtualHost>
重啟Apache伺服器,出現:"Could not determine the server's fully qualified domain name,using 127.0.0.1 for ServerName",
請幫忙看看出現在哪裡錯誤
《解決方案》
很好解決
其實你的配置沒問題 服務也可以正常訪問
在hosts文件中,加入你的計算機和ip地址的對應關係
例:192.168.0.1 test.com(隨便什麼都行,只要是符合FQDN規則就行。)
《解決方案》
原帖由 daizhongxian 於 2007-9-28 14:30 發表 http://linux.chinaunix.net/bbs/images/common/back.gif
其實你的配置沒問題 服務也可以正常訪問
在hosts文件中,加入你的計算機和ip地址的對應關係
例:192.168.0.1 test.com(隨便什麼都行,只要是符合FQDN規則就行。)
謝謝你的幫助,終於可以了,原因就是你上面所說的。