Apache虚拟主机的搭建(原)
搭建虚拟主机的意义:原原本本的模拟一个远程服务器的访问环境,最大化缩小与远程服务器环境的差异,可以本地修改后上传,而不是通过远程服务器在修改;
而且利用虚拟主机可以模拟出不同的域名访问效果.
一.基于域名的虚拟主机的配置
1.记事本打开hosts文件,该文件在:C:\ Windows\ System32\ drivers\etc这个文件夹下, 在文件内容的末尾写入如下内容:
127.0.0.1 www.lamp1018.com 作用:在hosts文件中将访问地址指向本地
2.记事本打开httpd-vhosts.conf文件,该文件在apache的目录下,如:E:\WAMP\ Apache24\conf\extra,按照文件中原有的格式再添加一个VirtualHost,只修改下面有注释的两处,如下:
<VirtualHost *:80>
ServerName www.lamp1018.com
DocumentRoot E:\WAMP\Apache24\lamp1018.com
</VirtualHost>
注意保留之前的默认的localhost
<VirtualHost *:80>
ServerName localhost
DocumentRoot E:\WAMP\Apache24\WWW
</VirtualHost>
3.记事本打开httpd.conf文件 ,该文件在apache的目录下,如: E:\WAMP\ Apache24\conf,修改如下两处:
LoadModule vhost_alias_module modules/mod_vhost_alias.so //去掉前面的#,意思是启用apache的虚拟主机功能
Include conf/extra/httpd-vhosts.conf //去掉#的意思是从httpd-vhosts.conf这个文件导入虚拟主机配置
4.重启apache,浏览器中输入www.lamp1018.com即可访问 。
二.基于端口的虚拟主机的配置
1.记事本打开httpd-vhosts.conf文件,按照文件中原有的格式再添加一个VirtualHost,修改其中的端口号和项目路径,如下(注意:端口号要保证不和系统中已使用的端口号冲突,所以尽量设置为4到5位数):
<VirtualHost *:12345>#这里修改为自定义的端口号
DocumentRoot "E:\WAMP\Apache24\WWW\ecshop"#DocumentRoot后面修改为网站的根路径
ServerName localhost#这里保持localhost就可以
</VirtualHost>
2.打开httpd.conf文件,添加如下代码,表示让apache监听我们上面的端口:
Listen 12345
3.保存并重启apache,然后在浏览器里输入"localhost:12345"就可以访问到我们的项目了。
注1:出现You don't have permission to access / on this server时,是因为我的虚拟主机目录为非apache安装目录下的htdocs,所以违反了apache默认对网站根访问权限。
apache的默认虚拟主机根目录地址为../Apache24/htdocs 目录下,需要对httpd.conf文件进行修改才能指向其他目录。
# Deny access to the entirety of your server's filesystem. You must
# explicitly permit access to web content directories in other
# <Directory> blocks below.
#
<Directory />
AllowOverride All
Require all denied
</Directory>
修改为
<Directory />
AllowOverride All
Require all granted
</Directory>
注2:因为hosts文件中127.0.0.1既指向localhost和www.lamp1018.com,所以搭建虚拟主机修改完后最好使用域名访问,比如127.0.0.1可能访问不到页面