XAMPP启用局域网访问功能

用 apache friend 提供的 XAMPP 在 windows 平台作 apache 服务器的确方便而又快捷,但基 于安全的原因, 默认的时候是无法再局域网的其他机器上访问设置界面的。 那么怎样启用局域网访问有能保证其安全呢?

你 需 要 对 httpd-xampp.conf 这 个 文 件 进 行 配 置

1. 找 到 xampp 根 目 录 下 的 /xampp/apache/conf/extra/httpd-xampp.conf 文件, 然后用一个文档编辑器编辑它, 推荐 EditPlus

2. 搜索关键字: Order deny,allow ,找到下面列出的这些行,他们表示只能在 127.0.0.1/8,即 localhost 上进行访问:


# Close XAMPP security section here
 <LocationMatch "^/(?i:(?:security))">
 Order deny,allow
 Deny from all
 Allow from ::1 127.0.0.0/8
 ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var
 </LocationMatch>

# Close XAMPP sites here
 <LocationMatch "^/(?i:(?:xampp|licenses|phpmyadmin|webalizer|server-status|server-info))">
 Order deny,allow
 Deny from all
 Allow from ::1 127.0.0.0/8
 ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var
 </LocationMatch>

为了允许局域网的访问,我们要将 IP 的范围扩大到局域网路由器的覆盖范围,以 Dlink 的 路由器(192.168.1.1 网关为例) ,设置如下:

# Close XAMPP security section here
</pre>
<LocationMatch "^/(?i:(?:security))">
 Order deny,allow
 Deny from all
 Allow from ::1 192.168.1.1/8 127.0.0.0/8
 ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var
</LocationMatch>

# Close XAMPP sites here
<LocationMatch "^/(?i:(?:xampp|licenses|phpmyadmin|webalizer|server-status|server-info))">
 Order deny,allow
 Deny from all
 Allow from ::1 192.168.1.1/8 127.0.0.0/8
 ErrorDocument 403 /error/HTTP_XAMPP_FORBIDDEN.html.var
</LocationMatch>
<pre>

其中的 Allow from ::1 192.168.1.1/8 127.0.0.0/8 可以用Allow from all 代替。192.168.0.1/8 表示 IP 从 192.168.1.1 到 192.168.1.255 被允许访问,即你的局域网 IP。
3. 最后你必须重启 Apache 服务器,让配置生效!在 windows 上找到 xampp 根目录下的 xampp/apache_stop.bat 和 apache_start.bat 文件,使用他们。如果 apache 被安装成 windows 服务,也可以用过 Windows 自带的服务管理器(Services)进行重启。