win10 apache配置虚拟主机后localhost无法使用的解决方法

yipeiwu_com7年前PHP代码库

win10系统配置虚拟主机

1.用记事本或Sublime Text打开httpd.conf

ctrl + f 搜索httpd-vhosts.conf

将
#Include conf/extra/httpd-vhosts.conf
的#号去掉保存

2.打开extra/httpd-vhosts.conf

添加如下内容:

<VirtualHost *:80>
ServerAdmin webmaster@youremail.com
DocumentRoot "E:/your_web_root"
ServerName your.web.com
ErrorLog "logs/your_web_error.log"
CustomLog "logs/your_web_access.log" common
</VirtualHost>

3.本地测试的话,还需要在hosts文件中配置一个域名解析条目,在C:/windows/system32/drivers/etc/目录下找到hosts文件

4.完成以上步骤后,重启Apahce就可以了

重点来了

这时虚拟主机的域名www.web.com可以正常访问,但是localhost就不能访问了。报错如下:

解决:

在httpd.conf文件中有一行代码是需要注释掉的
ServerName localhost:80
把ServerName这一行代码注释掉就可以了
也许你的httpd.conf文件中并不是localhost:80 这个值,可能是ServerName a.com:80 ; 都一样,直接注释掉就可以使用。
之后无论开启或者关闭虚拟主机,localhost都可以正常访问。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【宜配屋www.yipeiwu.com】。

相关文章

php出现Cannot modify header information问题的解决方法大全

这样的语句,很显然,造成这个原因是因为setcookie造成的,查了一下网上,有如下的解释:      cookie本身在使用...

php中getservbyport与getservbyname函数用法实例

本文实例讲述了php中getservbyport与getservbyname函数用法。分享给大家供大家参考。具体如下: 复制代码 代码如下: string getservbyport (...

PHP 之 写时复制介绍(Copy On Write)

PHP 之 写时复制介绍(Copy On Write)

在开始之前,我们可以先看一段简单的代码: 复制代码 代码如下:<?php   //例一     $foo = 1;  &...

PHP页面间参数传递的四种方法详解

我们定义page01.php和page02.php两个php文件,将page01中的内容想办法传递到page02,然后供我们继续使用。--------------------------...

php数组中删除元素之重新索引的方法

如果要在某个数组中删除一个元素,可以直接用的unset,但今天看到的东西却让我大吃一惊 复制代码 代码如下: <?php $arr = array('a','b','c',...