在apache下配置虚拟主机
来源:互联网 发布:幽灵的礼物知乎 编辑:程序博客网 时间:2024/04/25 02:43
在apache的配置文件目录里,找到 extra 目录,你会发现 httpd-vhosts.conf 文件,打开文件一看,你会发现以下内容(注释已经省略)
NameVirtualHost *:80
ServerAdmin webmaster@dummy-host.robert.qiu.com
DocumentRoot "/www/docs/dummy-host.robert.qiu.com"
ServerName dummy-host.robert.qiu.com
ServerAlias www.dummy-host.robert.qiu.com
ErrorLog "logs/dummy-host.robert.qiu.com-error_log"
CustomLog "logs/dummy-host.robert.qiu.com-access_log common"
ServerAdmin webmaster@dummy-host2.robert.qiu.com
DocumentRoot "/www/docs/dummy-host2.robert.qiu.com"
ServerName dummy-host2.robert.qiu.com
ErrorLog "logs/dummy-host2.robert.qiu.com-error_log"
CustomLog "logs/dummy-host2.robert.qiu.com-access_log common"
在这一堆配置信息中实际上我们只要注意以下内容既可(序号是我加上去的,注意,配置文件的原文)
1. NameVirtualHost *:80
2.
...
3. DocumentRoot "/www/docs/dummy-host.robert.qiu.com"
4. ServerName dummy-host.robert.qiu.com
...
第一句表示apache针对本服务器某个ip地址和端口,进行虚拟主机设置。听上去有些拗口,举个例子,如果服务器有2个ip,192.168.1.1,192.168.1.2,那么如果第一条设置成 NameVirtualHost 192.168.1.1:80, 那么,只有针对192.168.1.1这个ip的请求才能按照下面虚拟主机的设置得到处理,比如:http://192.168.1.1/filename。在这里设置为*:80,则表示无论请求的ip是多少都能得到处理,因为你的服务器放到不同的局域网里可能分到的ip不同,设置成这样就不需要修改了。
第二句 配套第一句使用,即对虚拟主机进行具体的配置,其中的*:80含义和上面一句相同。
第三句 表示这个虚拟主机的文件根目录所在位置,它的意思和主配置文件httpd.conf中的一样
第四句 这是配置的关键,表示从客户端的请求所定义的服务器名,将得到服务器的处理。这里我一开始也不明白,上面不是设置了ip吗,为什么这里还要设置机器名。所谓虚拟主机就是一个台服务器能够当成N台服务器使用,那在internet上,一台服务器外网只有一个ip,如果一台服务器的外网ip是111.111.111.111,那么我们第一句就可以设定为 NameVirtualHost 111.111.111.111:80,来响应客户端的请求,当然设置成*:80,也可以。由于dns的作用,我们可以用n个域名指向111.111.111.111,比如 www.domain1.com, www.domain2.com, www.domain3.com... 但是当你用这些域名访问的时候会发现,你打开的都是同一个页面(当然是在设置虚拟主机之前)。如果你想用不同的域名访问不同的内容,那么必须有一个功能来根据你不同的域名来定位不同的资源,于是ServerName 这个命令就起作用了。所以整个2-4句的作用就是把对 dummy-host.robert.qiu.com请求映射到 /www/docs/dummy-host.robert.qiu.com 目录中
NameVirtualHost *:80
ServerAdmin webmaster@domain1.com
DocumentRoot "/www/domain1"
ServerName www.domain1.com
ServerAlias www.domain1.com
ErrorLog "logs/domain1-error_log"
CustomLog "logs/domain1-access_log common"
ServerAdmin webmaster@domain2.com
DocumentRoot "/www/domain2.com"
ServerName www.domain2.com
ErrorLog "logs/domain2.com-error_log"
CustomLog "logs/domain2.com-access_log common"
ServerAdmin webmaster@domain3.com
DocumentRoot "/www/domain3.com"
ServerName www.domain3.com
ErrorLog "logs/domain3.com-error_log"
CustomLog "logs/domain3.com-access_log common"
按照上面的分析,上面的这些配置信息就配置除了
www.domain1.com
www.domain2.com
www.domain3.com
三台虚拟主机了
- 在apache下配置虚拟主机
- 在Fedora10下配置Apache和虚拟主机
- 在windows下Apache的虚拟主机配置
- apache在wamp下配置虚拟主机虚拟目录
- Apache下配置虚拟主机
- 在Apache下配置多个虚拟主机站点
- 步骤清晰四步在win7下配置Apache虚拟主机
- apache下虚拟主机的配置
- linux 下apache 配置虚拟主机
- apache下配置虚拟主机服务
- linux下apache虚拟主机配置
- windows下配置apache虚拟主机
- Apache下配置虚拟主机总结
- Apache下配置虚拟主机总结
- linux下apache 配置虚拟主机
- ubuntu下配置apache虚拟主机
- Ubuntu下Apache虚拟主机配置
- apache下虚拟主机的配置
- 盘点央视公布过的有毒日常食品图片,震撼啊!
- Struts Bean标签
- socket编程中相关数据结构
- Apache + MySQL + Python + Mod_python
- 推箱子游戏———DELPHI
- 在apache下配置虚拟主机
- 当想进一步查看VP结果报错时
- 把.NET程序部署到没有安装.NET Framwork的机器上
- VB取得DOS方式的路径地址
- 听了“两岸琴深”
- 发现一个有趣的网站www.powerset.com语义网(自然语言)搜索引擎
- 怀念父亲
- C#程序关闭后,并没有释放内存。还在内存中运行的解决方法
- GridView 72般绝技