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来代理