WAMP本地环境配置多站点虚拟目录(超详细)

沃森博客 2017年10月27日12:11:10web大杂烩评论698阅读模式

此方法适合Wampserver 2.5 或者是Apahce2.4版本的,因为Apache2.2与Apache2.4配置文件有变动,所以有的地方稍微有点区别。传送门:“Apache2.2和Apache2.4中httpd.conf配置文件的异同”。Apache2.2的配置方法见下方。

整个配置过程我们一共要用到3个文件,请大家先打开这些文件方便下面修改

C:\Windows\System32\drivers\etc 下的 hosts文件

D:\wamp\bin\apache\apache2.4.9\conf\extra 下的 httpd-vhosts.conf

D:\wamp\bin\apache\apache2.4.9\conf 下的 httpd.conf

1.编辑httpd.conf

LoadModule php5_module "d:/wamp/bin/php/php5.5.12/php5apache2_4.dll"
PHPIniDir d:/wamp/bin/php/php5.5.12
Include conf/extra/httpd-vhosts.conf

找开wamp\bin\apache\apache2.4.9\conf 下的 httpd.conf文件,找到上面那三句,如果它们被#注释了的话,则去掉#;说明一下,前两句一般都是开启的,第三句 Include conf/extra/httpd-vhosts.conf ?一般注释的,去掉注释后就能开启配置站点;然后就不用管httpd.conf了。

2.编辑 httpd-vhosts.conf

上面那步的第三句话就是让wamp\bin\apache\apache2.4.9\conf\extra 下的 httpd-vhosts.conf的配置起作用,我们看到23~30行,这就是一个配置站点的范例,你可以参照它写一个,也可以按照我下面的标准写一个站点信息

<VirtualHost *:80>
    DocumentRoot "e:/PhpProject/"
    ServerName wosn.net
     <Directory "e:/PhpProject/">
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
    </Directory>
</VirtualHost>

这些代表的意思自己百度吧

DocumentRoot "e:/PhpProject/" 网站的根目录
ServerName wosn.net 服务器名称,即访问url
<Directory "e:/PhpProject/">
        Options Indexes FollowSymLinks
        AllowOverride None
        #Require local:表示只有本地主机才能访问本服务
        #Require local
        #Require all granted:则表示允许一些主机访问到本服务
        Require all granted
</Directory>
这段很关键,是给你自己的站点设置权限,不然没法访问

3.编辑 hosts文件

打开C:\Windows\System32\drivers\etc 下的 hosts文件,添加解析记录。

添加站点,即在httpd-vhosts.conf中添加的站点;127.0.0.1指的是本地的主机,后面的域名对应的告诉浏览器应优先在127.0.0.1主机下解析域名;

127.0.0.1 wosn.net

按照以上流程配置完以后,重启wamp所有服务,在浏览器输入wosn.net就能访问到自己的站点了。

但是这样localhost访问则出现了问题,这时需要我们,同样将localhost设为虚拟主机

<VirtualHost *:80>
        DocumentRoot D:/wamp/www
        ServerName localhost
        <Directory "D:/wamp/www">
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
        </Directory></VirtualHost>

为了让其他电脑用IP访问电脑,需要在httpd.conf 中搜索127.0.0.1,修改为all;

最后作一个补充,配置过后的站点可以直接通过IP访问,条件是要和本机在同一局域网内,通过IP访问显示为最上面配置的一个站点,通过手机访问也是一样,直接输入IP地址即可。

常见问题

wampserver默认用的是80端口,有时候会被其他程序占用,当被占用的时候,你只需在httpd-vhosts.conf里面找到

Listen 0.0.0.0:80#ipv4端口
Listen [::0]:80#ipv6端口

在它后面再添个自定义的端口号,最好6000以上,比如下面的

Listen 0.0.0.0:8080
Listen [::0]:8080

然后配置站点信息的时候,在

<VirtualHost *:80>

中把80改成自己的端口号,就可以顺利地访问自己的站点了。


此方法适合Apache2.2版本。

第一种方法:

步骤:

1. wamp/bin/apache/apache2.2.8/conf/ 下的 httpd.conf 文件中Include conf/extra/httpd-vhosts.conf,去掉前面的#号

2.继续在配置文件里面查找Deny from all,并且在每一个Deny from all下面添加Allow from all,整个配置文件有三处

3.修改httpd-vhosts.conf中信息,其路径为:..\wamp\bin\apache\apache2.2.8\conf\extra\httpd-vhosts.conf 内容:

<VirtualHost *:80>
 DocumentRoot "e:/wosn"
 ServerName wosn.net
</VirtualHost>

第二种方法:

1.打开Apache的配置文件httpd.conf,并去掉#Include conf/extra/httpd-vhosts.conf前面的#!!

2.打开Apache的apache/conf/extra下的次配置文件httpd-vhosts.conf

3.将此文件下的原有的扩展配置文件(如下):删除一个或两个

<VirtualHost *:80>
 ServerAdmin webmaster@dummy-host2.localhost
 DocumentRoot /www/docs/dummy-host2.localhost
 ServerName dummy-host2.localhost
 ErrorLog logs/dummy-host2.localhost-error_log
 CustomLog logs/dummy-host2.localhost-access_log common
 </VirtualHost>

4.在httpd-vhosts.conf文件的末尾添加上:

<VirtualHost *:80>
 DocumentRoot e:/wosn
 ServerName wosn.net
 <Directory "e:/wosn">
 Options Indexes FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all
 </Directory></VirtualHost>

5.打开在C:/WINDOWS/system32/drivers/etc中的hosts文件中加上如下的内容

127.0.0.1 wosn.net

6.这样我们就配置好了名为wamp的虚拟主机,重启一下我们在浏览器中输入wosn.net就能访问了。

7.但是这样localhost访问则出现了问题,这时需要我们,同样将localhost设为虚拟主机

<VirtualHost *:80>
 DocumentRoot D:/wamp/www
 ServerName localhost
 <Directory "D:/wamp/www">
 Options Indexes FollowSymLinks
 AllowOverride None
 Order allow,deny
 Allow from all
 </Directory></VirtualHost>

其实这个就是一个Apache配置虚拟主机过程,更多相关文章:

Apache配置多个网站的方法

Apache服务器配置多个站点的方法(基于主机名)

 

沃森博客
  • 本文由 发表于 2017年10月27日12:11:10
  • 本文来自互利网收集整理,问题反馈联系邮箱:wosnnet@foxmail.com,转载请务必保留本文链接:https://wosn.net/745.html

发表评论