域“www.abc.lk”的Apache Web服务器配置并托管在托管服务器中,IP地址为192.168.2.105。另一个名为“www.def.lk”的域名也应配置相同的内容,不得有任何重复。根据上述要求,解释具有基于名称的虚拟主机的Apache服务器的配置?
答案 0 :(得分:1)
您必须配置两个具有相同DocumentRoot但具有不同ServerNames
的虚拟主机http://httpd.apache.org/docs/2.2/vhosts/examples.html
# Ensure that Apache listens on port 80
Listen 80
# Listen for virtual host requests on all IP addresses
NameVirtualHost *:80
<VirtualHost *:80>
DocumentRoot /www/example1
ServerName www.abc.com
# Other directives here
</VirtualHost>
<VirtualHost *:80>
DocumentRoot /www/example1
ServerName www.123.com
# Other directives here
</VirtualHost>
答案 1 :(得分:0)
为什么不在服务器配置中使用www.abc.lk作为ServerName和www.def.lk作为ServerAlias?
当然要确保两个DNS都指向服务器。
答案 2 :(得分:0)
以下是我使用的内容(我认为此链接列出了所有解决方案或可能性): https://realtechtalk.com/Apache_Vhost_HowTo_Serve_Same_Content_using_a_different_domain_and_IP-1730-articles
这是另一种方法,它比在vhosts之间符号链接或复制内容更简单:
这将在你的vhost.conf
中ServerName differentdomain.com
ServerAlias www.differentdomain.com
ProxyPass / http://yourmainsite.com/
ProxyPassReverse / http://yourmainsite.com/