1. 先打开Apache的配置文件httpd.conf,在这个文件,
找到这句:“#Include ......../extra/httpd-vhosts.conf”
(根据安装路径不同,上面的路径会有不同)
把前面的#去掉,即开启了使用虚拟主机的功能;
同样在httpd.conf中找到
#LoadModule vhost_alias_module modules/mod_vhost_alias.so
去掉前面的#号
2. 在httpd-vhosts.conf中进行虚拟主机的配置操作;也可以在httpd.conf直接写入配置,但是不建议这么做;
3. 打开httpd-vhosts.conf文件,找到NameVirutalHost *:80,这句话的含义是制定这个主机的IP地址和端口号;
4. 关键的virtualhost配置,在NameVirutalHost *:80的下面;注意:Apache在接受请求时,首先会默认第一个VirtualHost,然后再匹配其他虚拟主机,如果没有匹配的,就是第一个VirtualHost起作用。故,在httpd.conf中,将<Dicrectory />(这个是所有目录的默认配置)和<Direcotry/opt/lampp/htdocs>的权限,都默认设置为deny from all。(:# DocumentRoot 是网站文件存放的根目录# ServerName 是网站域名, 需要跟 DNS 指向的域名一致)
5. virtualhost配置实例:
<VirtualHost *:80>
DocumentRoot "E:/web/www"(你的文件存放的路径)
ServerName www.example.cc
ErrorLog "logs/www.example.cc-error.log"(查看错误的地方)
CustomLog "logs/www.example.cc-access.log" common
<Directory "E:/web/www">(同上一致)
Options Indexes FollowSymLinks Includes ExecCGI
Order allow,deny
Allow from all
Require all granted
</Directory>
第二个
<VirtualHost *:80>
DocumentRoot "仿写第一个"(你的文件存放的路径)
ServerName www.example.cc
ErrorLog "logs/www.example.cc-error.log"(查看错误的地方)
CustomLog "logs/www.example.cc-access.log" common
<Directory "仿写第一个">(同上一致)
Options Indexes FollowSymLinks Includes ExecCGI
Order allow,deny
Allow from all
Require all granted
</Directory>