nginx虚拟主机

一、虚拟主机

最新更新:请点击这里
虚拟主机:利用虚拟主机技术,可以把一台真正的主机分成许多"虚拟"的主机,每一台虚拟主机都具有独立的域名和IP地址,具有完整的Internet服务器(www, FTP,email)功能。 虚拟主机之间完全独立,在外界看来,每一台虚拟主机和一台独立的主机完全一样。

1、配置基于域名虚拟主机

# 创建web站点目录
[root@wwwroot conf]# mkdir /home/wwwroot/{www,bbs}
[root@wwwroot conf]# echo "www" > /home/wwwroot/www/index.html
[root@wwwroot conf]# echo "bbs" > /home/wwwroot/bbs/index.html

#配置虚拟主机
[root@wwwroot conf]# cat conf.d/{www,bbs}.conf
server {
   listen 80;
   server_name www.test.com;
   root /home/wwwroot/www;
   ...
}

server {
   ...
   listen 80;
   server_name bbs.test.com;
   root /home/wwwroot/bbs;
}

2、配置基于端口访问不同的虚拟主机

//仅修改listen监听端口即可, 但不能和系统端口发生冲突
server {
   listen 8080;
   server_name www.test.com;
   root /home/wwwroot/www;
   ...
}
//只修改了监听端口号,域名不变
server {
   ...
   listen 8081;
   server_name www.test.com;
   root /home/wwwroot/bbs;
}

3、配置虚拟主机别名

虚拟主机别名:虚拟主机设置除了主域名以外的一个域名,实现用户访问的多个域名对应同一个虚拟主机网站的功能。

以www.test.com域名的虚拟主机为例:
为其增加一个别名test.com时,出现网站内容和访问www.test.com是一样的,具体配置如下:

//默认配置
[root@wwwroot ~]# vim /etc/nginx/nginx.conf
server {
   listen 80;
   server_name www.test.com;
}

//别名配置
[root@wwwroot ~]# vim /etc/nginx/nginx.conf
server {
   listen 80;
   server_name www.test.com test.com;
   ...
}

//使用Linux下curl测试结果
[root@wwwroot conf]# curl test.com
www.test.com
[root@wwwroot conf]# curl www.test.com
www.test.com

//访问带www和不带www是一样的, 除了别名实现也可以通过rewrite实现
server {
   listen 80;
   server_name test.com;

   rewrite ^/(.*) http://www.test.com/$1 permanent;
}

server {
   listen 80;
   server_name www.test.com ;

   location / {
      root html;

      index www.html;
    }
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值