此方法适合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配置虚拟主机过程,更多相关文章:
评论