Nginx 代理配置

Nginx代理

代理多个域名IP地址
1、虚拟主机配置文件下配置。
# 启动nginx代理 自定义代理地址
upstream nginx1{
       # 代理的地址、端口
       server www.456.com:80;
       server 192.168.1.115:60;
}

server{
      # 代理监听端口
      listen 80;
      # 代理域名
      server_name www.nginx.com

      location / {
         # 代理自定义名字 nginx1,要与upstream名字对应,相当于代理的地址。
         proxy_pass http://nginx1/;
         # 以下三行,目的是将代理服务器收到的用户的信息传到真实服务器上 
         proxy_set_header Host $host;
         proxy_set_header X-Real-IP   $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        
}
# 启动日志文件
# access_log /home/logs/www.nginx.com combined;
}
虚拟主机配置文件内
 
代理服务器上所有域名
可以用nginx代理一个服务器上所有域名,方法如下。
1.主配置文件不需要更改任何配置
2.在vhosts目录下需要建立两个文件,一个是servername列表文件,一个是虚拟机配置文件
两个文件内容分别为
(1)servername文件下使用;为分隔符可以换行
server_name www.123.net.cn www.alsdjfl.com www.asdfa1.com; //就这么简单一行,当然这个
(2)虚拟主机配置文件
server {
            listen 80;
            # 这里的文件就是上边那个servername列表文件
            include vhosts/servername;
            location / {
                # 这里就是需要做代理的服务器ip地址了
                proxy_pass     http://1.2.1.2/;  
                proxy_set_header Host   $host;
                proxy_set_header X-Real-IP      $remote_addr;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            }
            access_log  /dev/null; 
        }
虚拟主机配置文件内
 

  
知识扩展
http://ask.apelearn.com/question/920 nginx代理--根据访问的目录来区分后端的web
http://ask.apelearn.com/question/1049 nginx针对请求的uri来代理
原文地址:https://www.cnblogs.com/xiangsikai/p/8394908.html