Nginx多域名配置

摘要:Nginx多域名配置一、环境准备1.Tengine,也称Taobaonginx,淘宝在Nginx基础上,针对大型网站访问,添加了一些高级功能和特性。2.Resin服务器或者Tomcat服务器,用来做Web服务器二、域名解析假设虚拟主机外网IP是123.123.123.123,添加解析到该域名:1.添加域名解析,@和www,分别对应tngtech.com和www.tngtech.com映射;2.添加手机站域名解析,m.tngtech.com3.添加图片域名解析,image.tn

Nginx多域名配置

一、环境准备

1.Tengine,也称Taobao nginx,淘宝在Nginx基础上,针对大型网站访问,添加了一些高级功能和特性。 
2.Resin服务器或者Tomcat服务器,用来做Web服务器

二、域名解析

假设虚拟主机外网IP是123.123.123.123,添加解析到该域名:

1.添加域名解析,@和www,分别对应tngtech.com和www.tngtech.com映射;

2.添加手机站域名解析,m.tngtech.com

3.添加图片域名解析,image.tngtech.com

三、Nginx配置多域名

1.创建Nginx运行用户

groupadd www 
useradd -s /sbin/nologin -g www www

2.配置Nginx

2.1 配置运行用户和工作进程数

user www; #Nginx运行用户 worker_processes 8; #工作进程数量,一般和CPU核数相等

2.2 配置Nginx连接数

events { worker_connections 2048; use epoll; }

worker_connections 设置可由一个worker进程同时打开的最大连接数。 
use 设置用于复用客户端线程的轮询方法。如果你使用Linux 2.6+,你应该使用epoll,高效处理事件驱动。

2.3 配置http长连接超时时间

keepalive_timeout 30;

2.4 开启Gzip压缩

gzip on; gzip_min_length 1000; gzip_comp_level 4; gzip_types text/css application/json text/javascript text/plain; 3. 配置多域名解析

3.1 配置www.tngtech.com域名解析

server { listen 80; server_name www.tngtech.com; location / { proxy_pass http://localhost:8083; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }

配置www.tngtech.com域名解析到80端口,proxy_pass配置代理转发到本机8083端口的Web服务器上(Tomcat或者Resin),proxy_set_header设置请求header参数,包括host,ip头等。

3.2 配置手机站m.tngtech.com域名解析

server { listen 80; server_name m.tngtech.com; location / { proxy_pass http://localhost:8082; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; } }

跟配置www域名类似,转发到本机8082端口的Web服务器上。

3.3 配置图片服务器

server { listen 80; server_name image.tngtech.com; charset utf-8; location ~* /.(gif|jpg|png)$ { root /webser/www/images; expires 30d; } }

过滤图片后缀,gif|jpg|png等,直接映射到/webser/www/images目录,设置缓存30d(天)过期。

至此,通过上面的Nginx配置,可以实现多个域名的解析。

posted @ 2018-03-16 13:27  Perfectionist  阅读(659)  评论(0编辑  收藏  举报