apache nginx 多站点部署

【基本介绍】
apache 和 nginx 多站点部署,一般情况有基于端口,基于域名,基于IP。


【基于域名】
每个虚拟主机的站点放在不同目录中,并配置不同的域名
#第一个虚拟主机
server{
listen 80 ; #监听的端口
server_name aaa.domain.com; #主机名称
access_log logs/aaa.domain.com.access.log combined ; #访问日志文件存放路径
location /
{
index index.html index.htm;
root /data0/htdocs/aaa.domain.com;
}
}
#第二个虚拟主机
server{
listen 80;
server_name www.domain.com domain.com *.domain.com;
access_log logs/bbb.domain.com.access.log bombined ;
location /
{
index index.html index.htm ;
root /data0/htdocs/domain.com;
}
}
}


apache:
NameVirtualHost *:80
<VirtualHost 第一个域名>
DocumentRoot /var/www/html/website1
ServerName 第一个域名</VirtualHost>

<VirtualHost 第二个域名>
DocumentRoot /var/www/html/website2
ServerName 第二个域名</VirtualHost>

<VirtualHost 第三个域名>
DocumentRoot /var/www/html/website3
ServerName 第三个域名</VirtualHost>

【基于端口号】
基于端口号的虚拟主机是通过给每个server配置一个不同的监听端口实现的

server{
listen 80 ; #监听的端口
access_log logs/aaa.domain.com.access.log combined ;
location /
{
index index.html index.htm;
root /data0/htdocs/aaa.domain.com;
}
}
#第二个虚拟主机
server{
listen 88; #监听不同的端口
access_log logs/bbb.domain.com.access.log bombined ;
location /
{
index index.html index.htm ;
root /data0/htdocs/domain.com;
}
}
}

apache:
<VirtualHost ip:80>
DocumentRoot /var/www/html/website1
ServerName localhost:80</VirtualHost>

<VirtualHost ip:81>
DocumentRoot /var/www/html/website2
ServerName localhost:81</VirtualHost>

<VirtualHost ip:82>
DocumentRoot /var/www/html/website3
ServerName localhost:82</VirtualHost>

【基于ip】-> 未测试
IP别名背后的概念很简单:可以在一块物理网卡上绑定多个IP地址.这样就能够在使用单一网卡的同一服务器上运行多个基于IP的虚拟主机.

如果要在eth0网卡设备上添加两个IP别名192.168.8.43和192.168.8.44可以通过以下ifconfig 和route命令来进行:
/sbin/ifconfig eth0:1 192.168.8.43 broadcast 192.168.8.255 netmask 255.255.255.0 up
/sbin/route add -host 192.168.8.43 dev eth0:1
/sbin/ifconfig eth0:2 192.168.8.44 broadcast 192.168.8.255 netmask 255.255.255.0 up
/sbin/route add -host 192.168.8.44 dev eth0:2
配置后如果能从另外一台服务器ping 192.168.8.43和192.168.8.44 ,如果能ping通,则证明配置无误.

但是通过ifconfig 和route配置的IP别名在服务器重启后会消失.不过可以将这两条命令添加到/etc/rc.local文件中,让系统开机时自动运行,
vi /etc/rc.local在文件末尾增加以下内容,然后保存即可.
/sbin/ifconfig eth0:1 192.168.8.43 broadcast 192.168.8.255 netmask 255.255.255.0 up
/sbin/route add -host 192.168.8.43 dev eth0:1
/sbin/ifconfig eth0:2 192.168.8.44 broadcast 192.168.8.255 netmask 255.255.255.0 up
/sbin/route add -host 192.168.8.44 dev eth0:2

分别对192.168.8.43,192.168.8.44,192.168.8.45三个IP配置三个纯静态HTML支持的虚拟主机
http{
#第一个虚拟主机
server{
listen 192.168.8.43:80; #监听的IP和端口
server_name 192.168.8.43; #主机名称
access_log logs/sever1.access.log combined ; #访问日志文件存放路径
location /
{
#默认首页文件,顺序从左到右,如果找不到index.html,则找index.htm
index index.html index.htm
#HTML网页文件存放的目录
root /data0/htdocs/server1;
}
}
#第二个虚拟主机
server{
listen 192.168.8.44:80;
server_name 192.168.8.44;
access_log logs/sever2.access.log combined ;
location /
{
#默认首页文件,顺序从左到右,如果找不到index.html,则找index.htm
index index.html index.htm
#HTML网页文件存放的目录
root /data0/htdocs/server2;
}
}


【参考】
[url]http://blog.csdn.net/guzhouke19910920/article/details/7992498[/url]
[url]http://blog.csdn.net/winter13292/article/details/8364620[/url]
[url]http://blog.openlg.net/index.php/archives/266[/url]
[url]http://blog.csdn.net/winter13292/article/details/8364620[/url]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值