Apache配置虚拟主机的坑 本地wampserver调试环境 局域网访问

今天在尝试使用apache环境做本地调试时
突发奇想能不能用修改host文件,新建虚拟域名直接访问本地目录。
感觉调试起来更真实。

(之前一直是用localhost/ 加项目路径访问)

于是上网搜索如何开启apache虚拟主机功能
很快就找到了答案

一、打开apache配置文件
路径:E:\wamp\bin\apache\apache2.4.9\conf\httpd.conf
或者点击桌面右下角wamp图标 按下图方式也可以快速找到


二、然后在配置文件内搜索httpd-vhosts.conf
去掉这一行的#注释  保存。


三、打开拓展配置文件httpd-vhosts.conf
路径:E:\wamp\bin\apache\apache2.4.9\conf\extra\httpd-vhosts.conf
会看到提供给您的两个例子
直接复制例子代码修改成如下示例 (其实就修改了ServerName和DocumentRoot) 保存。
* 这里要注意一下DocumentRoot设置时候 E:\wamp\www\mysite 不要加斜杠 \  否则你重启wamp的时候就会失败  下面类似设置也是如此!!!
xml 代码
 
  
1
2
3
4
5
6
7
8
9
< VirtualHost  *: 80 >
    ServerAdmin [email protected]
         DocumentRoot "E:\wamp\www\mysite"
         ServerName mysite.loca
    ServerAlias mysite.loca
    ErrorLog "logs/dummy-host.localhost-error.log"
    CustomLog "logs/dummy-host.localhost-access.log" common
VirtualHost >


四、修改host文件添加映射
路径:C:\Windows\System32\drivers\etc\hosts 
添加映射:   127.0.0.1 mysite.loca

保存hosts  重启wamp  打开浏览器直接输入mysite.loca 测试
你就发现可以正常打开浏览了

但是坑来了,你再像以前用浏览器打开localhost的时候发现403报错无法正常访问了
直接上解决方法

五、再次打开拓展配置文件httpd-vhosts.conf
然后添加如下代码
xml 代码
 
  
1
2
3
4
5
6
7
8
9
< VirtualHost  *: 80 >
    ServerAdmin [email protected]
         DocumentRoot "E:\wamp\www"
    ServerName localhost
    ServerAlias localhost
    ErrorLog "logs/dummy-host.localhost-error.log"
    CustomLog "logs/dummy-host.localhost-access.log" common
VirtualHost >


保存 重启wamp 再去打开浏览器测试下localhost路径,发现也没问题了
接着我们再用同一局域网内的手机通过内网ip访问一下,发现我去又无法打开了
直接上解决方法

六、首先保证你原先的配置文件已经打开局域网访问的权限

如果原先没有打开
1)那么先查看下apache的版本


2)如果是2.4以下版本
那么在httpd.conf搜索Deny from all  修改成 Allow From All

3)如果是2.4以上的版本
那么在httpd.conf搜索Require local  修改成 Require all granted

保存

七、再次打开拓展配置文件httpd-vhosts.conf(我保证最后一次)
然后添加如下代码  serverName修改成局域网ip,DocumentRoot修改成www路径或者也可以设置成上面配置好的虚拟主机项目路径
xml 代码
 
  
1
2
3
4
5
6
7
8
9
< VirtualHost  *: 80 >
    ServerAdmin [email protected]
         ServerName 192.168.10.1
    DocumentRoot "E:\wamp\www\"
    ServerAlias localhost
    ErrorLog "logs/dummy-host.localhost-error.log"
    CustomLog "logs/dummy-host.localhost-access.log" common
VirtualHost >


保存 重启wamp 用手机浏览器输入局域网ip测试一下吧

后期有其他的虚拟主机项目,只要在httpd-vhosts.conf添加一个类似代码就可以了。


转载来自:http://www.qdfuns.com/notes/18483/29c20e1c777792450577a5920ddc0887.html

你可能感兴趣的:(PHP)