一直使用xampp做apache服务器,可是新版的xampp添加了虚拟主机就访问127.0.0.1也跳转到了虚拟主机去了,比如:我添加了www.111com.net,路径是e:wwwdemo,而我的添加完之后,访问127.0.0.1竟然也是跑到了www.111com.net下面去。
上网找了好多资料说是添加localhost的,于是在httpd.conf最后添加如下配置:
代码如下 |
复制代码 |
DocumentRoot E:www
ServerName 127.0.0.1
# ErrorLog logs/default-error_log
Options Indexes FollowSymLinks Multiviews
AllowOverride All
Order Allow,Deny
Allow from all
|
发现还是不行,继续查找,期间安装了PHPnow,也是类似的情况,后来无意中看到了NameVirtualHost这个配置,于是写成了:
代码如下 |
复制代码 |
NameVirtualHost * |
重启apache竟然可以了,坑爹啊,记录下,防止下次踩坑!
下面看一个实践实例
Linux (包括 CentOS Linux), 是使用最广的 Linux 服务器, 大量的网站应用都部署在其上.
1. 打开文件 /etc/httpd/conf/httpd.conf, 搜索 VirtualHost example, 找到代码如下:
代码如下 |
复制代码 |
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for requests without a known
# server name.
#
#
# ServerAdmin [email protected]
# DocumentRoot /www/docs/dummy-host.example.com
# ServerName dummy-host.example.com
# ErrorLog logs/dummy-host.example.com-error_log
# CustomLog logs/dummy-host.example.com-access_log common
#
|
2. 仿照例子, 添加一段代码来指定某一域名的网站.
代码如下 |
复制代码 |
#
# DocumentRoot 是网站文件存放的根目录
# ServerName 是网站域名, 需要跟 DNS 指向的域名一致
#
ServerAdmin [email protected]
DocumentRoot /var/www/httpdocs/demo_neoease_com
ServerName www.111com.net
ErrorLog logs/demo.neoease.com-error.log
CustomLog logs/demo.neoease.com-access.log common
|
3. 重启 httpd 服务, 执行以下语句.
代码如下 |
复制代码 |
service httpd restart
|