您的位置:首页 > 运维架构 > Apache

Apache 2.4 局域网发布网站

2017-04-28 09:55 239 查看

虚拟主机配置

1、虚拟主机定义

①在Apache文件配置的项目文件夹,我这里是D:\www下创建项目,文件夹名字叫做demo

②编辑httpd-vhost.conf,在Apache安装路径下,我这里是D:\Program Files\Apache\Apache24\conf\extra在httpd-vhost.conf文件中添加:

<VirtualHost *:80>
DocumentRoot "D:/www/demo"
ServerName demo
<Directory  "D:/www/demo">
AllowOverride All
Require local
</Directory>
</VirtualHost>


含义是,虚拟机使用的是80端口,并且虚拟机的名称叫做demo,即在浏览器的地址栏输入
http://demo
即可。

2、把新域名加到HOSTS文件中

①host文件所在位置C:\Windows\System32\drivers\etc

在文件hosts中添加

127.0.0.1 demo
::1 demo


其中127.0.0.1代表IPV4地址,而::1代表IPV6地址。然后保存这个文件(再次提醒需要管理员权限)。

②用管理员权限打开Windows命令行终端,cmd,分别运行下面两行代码

net stop dnscache

net start dnscache

3、取消掉Apache中关于虚拟主机定义的注释

①httpd.conf文件位于D:\Program Files\Apache\Apache24\conf目录(511行),打开文件之后,找到这两行代码:

#Virtual hosts
#Include conf/extra/httpd-vhosts.conf


把 #Include conf/extra/httpd-vhosts.conf 前的 # 取消。然后保存文件,重启Apache。

②在demo文件夹下创建一个php文件,命名为test.php. test.php文件中放入以下内容:

<?php
echo 'test demo';
?>


成功!

在局域网中发布网站,更改相关的配置

如果需要发布网站,允许局域网内的其他用户访问,需要更改上述配置项

修改httpd.conf

<Directory "我的代码目录">
Options Indexes FollowSymlinks
AllowOverride All
Require all granted
</Directory>


注意这个写法和Apache2.2版本有所不同。

修改httpd-vhost.conf

<VirtualHost *:80>
DocumentRoot "D:/www/demo"
ServerName xxx.xxx.xxx.xxx
<Directory  "D:/www/demo">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>


注意

1、ServerName xxx.xxx.xxx.xxx 这里写你本机的ip地址


获取本机ip地址的方式:

cmd打开,输入ipconfig 回车

找到ipv4后的数字,即为ip地址

2、Require local 改为 Require all granted

重启apche ,成功。在另外一台局域网的电脑访问你的IP地址和对应demo文件夹下的文件,比如test.php,浏览器地址栏输入

xxx.xxx.xxx.xxx/test.php

应该会有结果出现。

如果失败请到Apache的安装目录->logs->error.log查看具体原因

参考资料

1、 http://ju.outofmemory.cn/entry/226300

2、 apache2.4配置虚拟主机遇到的那些坑

3、关于Apache2.4限制目录访问配置的问题
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息