百分百源码网-让建站变得如此简单! 登录 注册 签到领金币!

主页 | 如何升级VIP | TAG标签

当前位置: 主页>网站教程>服务器> CentOS系统Apache虚拟主机配置详解
分享文章到:

CentOS系统Apache虚拟主机配置详解

发布时间:01/15 来源: 浏览: 关键词:
Apache虚拟主机配置在windows下非常的简单但在linux系统中许多朋友不会配置了,下文从简单的单主机配置到多个ip配置方法一聚教程小编都为各位有整理过了。

NameVirtualHost *:80  

注意一:NameVirtualHost 指定虚拟主机所使用的IP地址或域名,但是最好是IP地址。使用基于域名的虚拟主机时,NameVirtualHost是必要的指令。NameVirtualHost可以定义多个。

注意二:所有符合NameVirtualHost或<VirtualHost>标签定义的请求,都会被作为虚拟主机处理,而主服务器将不理 会。NameVirtualHost定义了而<VirtualHost>标签没有定义的的请求,服务器会找不到相应的虚拟主机而将无法处理。 所以每个NameVirtualHost定义的参数至少要有一个<VirtualHost>相匹配。

注意三:如果设置NameVirtualHost 或<VirtualHost>为*:80的话,所有针对80端口的请求,都会被虚拟主机处理,请求会根据域名指向某个虚拟主机。如果有来自 80端口的请求,而所请求的域名没有被配置为虚拟主机,那将指向第一个虚拟主机。这样主服务器将无法收到来自80端口的任何请求。为此也要为主服务器配置 一个虚拟主机。

比如我们以IP192.168.0.3配置两个虚拟主机。
首先编辑 /etc/httpd/conf/httpd.conf配置文件

vi /etc/httpd/conf/httpd.conf

然后添加如下代码至文件底部:

NameVirtualHost 192.168.0.3
<virtualhost 192.168.0.3>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/website2
ServerName www.website2.com
ErrorLog /var/www/html/website2/logs/error_log
TransferLog /var/www/html/website2/logs/access_log
</virtualhost>
<virtualhost 192.168.0.3>
ServerAdmin admin@website3.com
DocumentRoot /var/www/html/website3
ServerName www.website3.com
ErrorLog /var/www/html/website3/logs/error_log
TransferLog /var/www/html/website3/logs/access_log
</virtualhost>

如果你有多个IP,则继续按以上代码添加,只需要修改192.168.0.3成你的IP即可。

让服务器支持多个网站,针对Apache,只需要你修改apache配置文件/etc/httpd/conf/httpd.conf即可。
里面有个example文件,你只要对应配置即可。


#<VirtualHost *:80>
#    ServerAdmin webmaster@dummy-host.example.com
#    DocumentRoot /www/docs/dummy-host.example.com
#    ServerName dummy-host.example.com
#    ErrorLog logs/dummy-host.example.com-error_log
#    CustomLog logs/dummy-host.example.com-access_log common
#</VirtualHos>


你可以参照我的配置,在httpd.conf最底部添加:


NameVirtualHost *:80
<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html
ServerName www.111cn.net
#ErrorLog /var/log/httpd/phpddt/error_log
#注意,这里我设置了以天为单位生产日志
ErrorLog "|rotatelogs /var/log/httpd/phpddt/error_log%Y_%m_%d.log 86400 480"
#CustomLog /var/log/httpd/phpddt/access_log common
CustomLog "|rotatelogs /var/log/httpd/phpddt/access_log%Y_%m_%d.log 86400 480" common
</VirtualHost>


<VirtualHost *:80>
ServerAdmin admin@example.com
DocumentRoot /var/www/html/blog
ServerName m.111cn.net
ErrorLog /var/log/httpd/blog/error_log
CustomLog /var/log/httpd/blog/access_log common
</VirtualHost>


如上我配置了两台虚拟主机:域名分别为www.111cn.net  m.111cn.net
注意,重启apache后才生效(service httpd restart)

打赏

打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

百分百源码网 建议打赏1~10元,土豪随意,感谢您的阅读!

共有12人阅读,期待你的评论!发表评论
昵称: 网址: 验证码: 点击我更换图片
最新评论

本文标签

广告赞助

能出一分力是一分吧!

订阅获得更多模板

本文标签

广告赞助

订阅获得更多模板