Apache2.4.9部署服务能让局域网及外网可以访问-摘记

版权声明:本文为博主原创文章,未经博主允许不得转载,如有技术需要联系[email protected]! https://blog.csdn.net/harrison2010/article/details/77933789
这个东西网上一搜一大把,为什么自己还要写那?主要是自己踩坑了,而且花了很多时间来找这个问题.分享出来让大家看看遇到问题时如何分析问题.

问题背景

  1. wamp下搭建php项目,需要把项目放置根目录运行
  2. 首先我使用了别名的方式,建立了一个别名文件就叫wx.conf吧,里面配置了权限的访问.
Alias /wx "D:/edusoho/web" 
<Directory "D:/edusoho/web">
    Options Indexes FollowSymLinks
    AllowOverride all
  <IfDefine APACHE24>
    Require local
  </IfDefine>
  <IfDefine !APACHE24>
    Order Deny,Allow
      Deny from all
      Allow from localhost ::1 127.0.0.1
    </IfDefine>
</Directory>
  • 后来看项目需要配置在根目录下,所以就选择了,修改httpd.conf文件.然后把wx.conf文件修改成wx.conf.bak,标识已经放弃(后来才发现这里是一个很大的坑)
    httpd.conf的修改也很简单.我贴一下代码
<Directory "D:/edusoho/web">
    Options Indexes FollowSymLinks
    AllowOverride all
  <IfDefine APACHE24>
    Require local
  </IfDefine>
  <IfDefine !APACHE24>
    Order Deny,Allow
      Deny from all
      Allow from localhost ::1 127.0.0.1
    </IfDefine>
</Directory>

悲剧上演

本以为大功告成,本地访问OK.但是局域网访问不行了. 接下来干了很多事情,都搞不定
- 修改httpd.conf文件中的访问权限(没用,但是知道了2.2版本与2.4之后版本的区别)
- 看到网上说用vhost方式,尝试了仍然不行.
- 想到我的花生壳之前的外网都可以访问,为啥局域网反而不行.(后来才行名表,花生壳其实是本机访问,然后把数据反馈给外网,并不算其他ip访问.)
- 偶然发现另外的别人项目是局域网手机访问的,然后就定位一定是根目录项目的问题
- httpd.conf文件,修改了几百遍. 还明白了 original 文件夹与 extra文件夹的用途. 还是不行. 搞的午饭都没吃.
- 最后无意间点到wamp托盘中的菜单,哪里可以修改 其他项目别名的配置,竟然发现了 wx.config.bak. 我了个去.这个不是被bak了吗?怎么他妈的还能用? 这apache只认文件夹下的文件,不认文件名的. 我qtmd.好了删了.终于可以了.(因为wx.config.bak中对相同目录的文件夹的限制覆盖饿了httpd.conf下的限制)


明白了一个事,bak不一定就能bak.以后出问题可以从这个方面去检查了.
虽然搞了很久.但是对apache的版本已经本身apache的配置有了更深入的了解. 后面打算用一个文章再了多配置做一个更详细的说明,方便以后查阅. 也分享出来,给可能遇到的朋友.已经寻找解决问题方案的人用.

猜你喜欢

转载自blog.csdn.net/harrison2010/article/details/77933789
今日推荐