您的位置:首页 > 运维架构 > Apache

配置apache虚拟主机

2010-07-29 19:38 281 查看
1,让apache服务器处于调试状态,以便对httpd.conf进行更改后,只要保存就立即生效

2,打开重写模块

3,虚拟路径测试

4,添加默认路径

5,结束,此文不研究.htaccess的重写

详细说明:

1,在152行左右(其实加在任何ifmoudle模块外面就行)加这一段:

# no need to restart server in devoping period
MaxRequestsPerChild 1


2,解除注释这一行:

#LoadModule rewrite_module modules/mod_rewrite.so


3,在Virtual Hosts配置节点,进行虚拟主机的配置,

方法有很多种,比如多个IP对应多个目录,我以前一直是用这一种,今天这种失败了,这一种方法以后发贴讨论,今天就说一个IP,多个域名,对应多个目录的吧

比如我把我目录里一个www/pie路径下的项目由www.dxpie.com来访问,那么我就这么设,


首先,既然是一个IP的,那就先指定这个IP,

NameVirtualHost *:80

然后,配置document root

<VirtualHost *:80>
ServerName www.dxpie.com
DocumentRoot "${path}/www/pie"
</VirtualHost>


最后,修改hosts文件,把www.dxpie.com指向127.0.0.1



现在测试一下,www.dxpie.com顺利指向我的www/pie目录,

但是问题出来了,我用Localhost,居然也直接转到了Pie目录,所以有了第4步,先加多几个虚拟路径测试吧。

4,在namevirtualhost *:80下面加如下代码

<VirtualHost *:80>
ServerName localhost
DocumentRoot "${path}/www"
</VirtualHost>

保存,测试,是不是Localhost已经指向www目录了?还不止如此,所有访问你本机的80端口的,没有被别的虚拟主机给匹配上的话,都会被这个节点拦住,直接访问www,这正是我要的效果,假如你不是这么想,适当改一改这个路径吧。

5,多做点事,给你指向的目录进行一些简单设置:

<Directory "${path}/www/pie">
Options Indexes FollowSymLinks
AllowOverride All
Order deny,allow
Allow from all
</Directory>


这个是从上面的配置文件中抄下来的,具体什么意思可以google,大致开启重写,保证能访问的作用。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: