Apache中在相同端口及不同端口设置多个虚拟主机,以及在本机自定义域名
参考了一些资料,自己又试了以下,有一点成功的经验。以下步骤在appserv2.5.9的apache中成功。
一、在一个不同端口(如1234):
1.从apache的程序目录\conf\httpd.conf中增加 Include conf/extra/httpd-vhosts.conf(取消前面井号)
2.从apache的程序目录\conf\extra\httpd.conf中增加一条记录,设置好网站根目录,域名,管理员可不设
如
<VirtualHost *:1234>
ServerAdmin admin@mailaddress.com
DocumentRootD:/AppServ/www/yoursiteroot
ServerNameyourwebsite.com
</VirtualHost>
3.增加httpd.conf 中listen的端口号,在listen 80下面加入listen 1234
二、若需要在相同端口安装不同域名网站:
1.从apache的程序目录\conf\httpd.conf中增加 Include conf/extra/httpd-vhosts.conf(取消前面井号)
2.从apache的程序目录\conf\extra\httpd-vhosts.conf中增加一条记录,新增网站的端口保持为80
如
<VirtualHost *:80>
ServerAdmin admin@mailaddress.com
DocumentRootD:/AppServ/www/yoursiteroot
ServerNameyourwebsite.com
</VirtualHost>
把原有的示例记录注销掉,因为原有范例设置网站根目录不存在,apache重新启动时会报错。
若启用虚拟主机,则原来的localhost的指向不会保持为未开启前的,而是指向新设置的网站根目录,于是需要在\conf\extra\httpd-vhosts.conf中增加一个指向原来的文件夹端口同样为80的记录。
三、实现在本机自定义的域名和IP的映射关系:
在host文件(c:/windows/system32/drivers/etc/host)中增加“域名 IP”映射,注意是“域名 IP”映射,IP不能包含端口号和路径。否则设置无效。
原来的host文件中有
localhost 127.0.0.1
的映射,增加
yourwebsite.com 127.0.0.1
即可在本机用yourwebsite.com来访问本机上搭建的网站。
结合以上几个可实现在一台机器相同端口搭建不同域名的网站,同理可在非80的许多端口搭建多个网站。