一、需求背景
某服务器上部署了nginx,需要绑定多个域名,不需要加端口。
比如:
通过sec.xxx.cn实现访问服务器的8790端口;
通过mt.xxx.cn访问服务器的8166端口;
通过yun.xxx.cn访问服务器的45606端口。
二、Nginx服务端配置
查看nginx主配置文件:
[root@YLMS nginx]# cat nginx.conf
worker_processes 2;
error_log /docker/server/xxx/log/error.log warn;
# pid logs/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
sendfile on;
keepalive_timeout 65;
include /docker/server/xxx/conf/mt.conf;
include /docker/server/domain.conf;
proxy_connect_timeout 100s;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
proxy_send_timeout 600s;
proxy_read_timeout 600s;
send_timeout 600;
client_max_body_size 100M;
gzip on;
gzip_buffers 32 4K;
gzip_comp_level 6;
gzip_min_length 1024;
gzip_types text/plain text/css application/json application/javascript text/xml application/xml application/xml+rss text/javascript image/svg+xml;
gzip_vary on;
}
配置80端口请求转发不同域名:
vim /docker/server/domain.conf
server {
listen 80;
proxy_set_header X-Real-IP $remote_addr;
server_name mt.xxx.cn;
location / {
proxy_pass http://127.0.0.1:8166;
}
}
server {
listen 80;
proxy_set_header X-Real-IP $remote_addr;
server_name sec.xxx.cn;
location / {
proxy_pass http://127.0.0.1:8790;
}
}
server {
listen 80;
proxy_set_header X-Real-IP $remote_addr;
server_name yun.xxx.cn;
location / {
proxy_pass http://127.0.0.1:45606;
}
}
三、重载验证效果
可以发现已经通过不同域名,访问到了服务器的对应服务。