apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

今天在学习PHP时,有这样的一个需求:一个ip(如:127.0.0.1)和多个域名(虚拟主机)绑定,以下是我的解决方案:

解决方案一:通过端口来区分不同的虚拟主机

①按照绑定一个站点的方法做好准备

1. 先开发好自己的网站(d:/myblog(存放在D盘的myblog目录下))

2. 配置httpd.conf文件(存放在apache安装目录的conf文件夹中),启用httpd-vhosts.conf(把第二行前面的#号去掉即可)。

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

3. 配置httpd-vhosts.conf文件(存放在apache安装目录的extra文件夹中)

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

4. 在hosts文件中添加ip和域名的对应关系

C:/Windows/System32/drivers/etc/hosts

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

5. 建议注销 DocumentRoot(文档根目录),在httpd.conf文件中

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

6. 测试,在浏览器中输入“http://www.shunping1.com”即可看到站点首页

②添加一个新域名与该ip绑定:

1. 开发新的网站:d:/myblog2

2. 配置httpd.conf文件(存放在apache安装目录的conf文件夹中),添加新的虚拟主机

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

3. 在httpd.conf文件总让apache监听81端口

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

4. 在hosts文件中添加新的域名

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

5. 测试,在浏览器输入“http://www.shunping3.com:80”即可(必须加上端口名)

解决方案二:通过ServerName端区分不同的域名

1. 开发新的站点 d:/myblog2

2. 在httpd.conf文件中让apache取消监听81端口(在前面加上#或者直接删除)

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

3. 在httpd-vhosts.conf文件中添加配置(注意这里的配置和方案一的不一样)

apache服务器一个ip(如:127.0.0.1)和多个域名(虚拟主机)的绑定

4. 其他的配置不变

相关推荐