apache安装完默认是不开启虚拟服务器的,如果希望在本地apache上面配置虚拟服务器,类似于在网上买的虚拟主机,可以按照以下步骤进行配置:

1.修改本机的hosts文件,网上很多博客教程都没说hosts文件在哪,以win7为例,在C:\Windows\System32\drivers\etc目录下



2.打开hosts ,以下图为例 添加你想在本地访问的域名,浏览器是默认先查找本地再查找外网,如果在本地找到该域名,是会访问本地的,如果你填入www.baidu.com  将不会访问到外网的百度站点,只能访问到你本地的配置站点。



 
2.打开Apache的安装目录,找到httpd.conf文件,分别去掉下面两行文字前面的#号。
LoadModule vhost_alias_module modules/mod_vhost_alias.so
去掉#意思是启用apache的虚拟主机功能。  
Include conf/extra/httpd-vhosts.conf  
去掉这一行的#意思是从conf/extra/httpd-vhosts.conf这个文件导入虚拟主机配置。

3.打开extra目录内的httpd-vhosts.conf文件,把默认的配置

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

<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>

改成自己想要的目录和域名

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "D:/www/"
    ServerName localhost
    ServerAlias localhost
    ErrorLog "logs/localhost-error_log"
</VirtualHost>

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "D:/www/web/" (运行目录)
    ServerName test.com (填主域名)
    ServerAlias *.test.com (这里的服务器别名可以支持泛解析,即所有的子域名都可以解析绑定到该虚拟主机)
    ErrorLog "logs/localhost-error_log"
</VirtualHost>

注:* 号代表泛解析,就是可以解析所有子域名的意思  以上面为例 可以解析,m.test.com  k.test.com 等多个域名(不受限制的,按照个人喜欢)

如果不希望泛解析,或者有多个站点在不同目录下的情况  可以配置多域名

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "D:/www/"(运行目录)
    ServerName qq.com(填主域名)
    ServerAlias qq.com (这里的服务器别名可以支持泛解析,即所有的子域名都可以解析绑定到该虚拟主机)
    ErrorLog "logs/localhost-error_log"
</VirtualHost>

多子站配置(指向同项目运行目录,子站目录切换方法根据项目而定)

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "D:/www/"(运行目录)
    ServerName m.qq.com(填主域名)
    ServerAlias m.qq.com (这里的服务器别名可以支持泛解析,即所有的子域名都可以解析绑定到该虚拟主机)
    ErrorLog "logs/localhost-error_log"
</VirtualHost>

多域名配置(多域名指在不同目录下的不同项目)

<VirtualHost *:80>
    ServerAdmin webmaster@dummy-host.localhost
    DocumentRoot "D:web/" (运行目录)
    ServerName baidu.com (填主域名)
    ServerAlias baidu.com (这里的服务器别名可以支持泛解析,即所有的子域名都可以解析绑定到该虚拟主机)
    ErrorLog "logs/localhost-error_log"
</VirtualHost>

如果 弄完之后 出现403错误 那 在httpd.conf里找到:
<Directory />
Options FollowSymLinks ExecCGI Indexes
AllowOverride None
Order deny,allow
Deny from all
Satisfy all
</Directory>

更改为
<Directory />
Options FollowSymLinks ExecCGI Indexes
AllowOverride None
# Order deny,allow
# Deny from all
# Satisfy all
</Directory>

上面配置完之后,重启Apache就可以在浏览器输入xlb.com访问你设定好的目录下面的站点了
相关评论(0)
您是不是忘了说点什么?

友情提示:垃圾评论一律封号...

还没有评论,快来抢沙发吧!