指引网

当前位置: 主页 > 服务器 > Apache >

apache虚拟主机配置过程问题解决

来源:网络 作者:佚名 点击: 时间:2017-06-18 20:46
[摘要]  apache虚拟主机就是一个以VirtualHost为打头每个网站可以是一个VirtualHost,这样一个服务器就可以有多网站了,同时NameVirtualHost 可以指定IP也可以不指定为星号,这样就可以绑定双线IP了

一直使用xampp做apache服务器,可是新版的xampp添加了虚拟主机就访问127.0.0.1也跳转到了虚拟主机去了,比如:我添加了www.111cn.net,路径是e:wwwdemo,而我的添加完之后,访问127.0.0.1竟然也是跑到了www.111cn.net下面去。

上网找了好多资料说是添加localhost的,于是在httpd.conf最后添加如下配置:

 代码如下 复制代码

<VirtualHost *>
    DocumentRoot E:www
    ServerName 127.0.0.1
#    ErrorLog logs/default-error_log
</VirtualHost>

<Directory "E:www">
    Options Indexes FollowSymLinks Multiviews
    AllowOverride All
    Order Allow,Deny
    Allow from all
</Directory>

发现还是不行,继续查找,期间安装了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.
#
#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    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
#</VirtualHost>

2. 仿照例子, 添加一段代码来指定某一域名的网站.

 代码如下 复制代码

#
# DocumentRoot 是网站文件存放的根目录
# ServerName 是网站域名, 需要跟 DNS 指向的域名一致
#
<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot /var/www/httpdocs/demo_neoease_com
    ServerName www.111cn.net
    ErrorLog logs/demo.neoease.com-error.log
    CustomLog logs/demo.neoease.com-access.log common
</VirtualHost>

3. 重启 httpd 服务, 执行以下语句.

 代码如下 复制代码

service httpd restart

------分隔线----------------------------