1,首先新建一個配置文件,/etc/nginx/sites-enabled/reverse-proxy.conf
內容為如下所示,每行都需要分號結尾
upstream monitor_server {<span style="white-space:pre"> </span>#这里是为了使用负载均衡,使得多个ip可以提供同一个服务,weight为权值, server 10.10.12.203:8080 weight=2; server 10.10.12.202:8080 weight=4; } server { listen 8081; server_name www.xxx123.com;<span style="white-space:pre"> </span># 反向域名代理,不同的域名是指向同一入口ip,经过nginx,又转向不同的内部ip提供网络服务,"www"不省略 location / { proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://monitor_server; } } server { listen 8081; server_name localhost; location / { proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://10.10.12.203:8080; } }
編輯/etc/nginx/nginx.conf,在http{}中加入一句話,例如在
include /etc/nginx/mime.types;
default_type application/octet-stream;
下面加一句:
include /etc/nginx/sites-enabled/reverse-proxy.conf;
這樣的話,就可以把反向代理設定檔引用到,接著重啟即可: service nginx restart
3 ,測試
我的測試客戶端是windows,ip是10.10.12.73;而nginx伺服器是在Ubuntu中,ip是10.10.2.176.
開啟c:windowsSystem32driversetchosts. www.xxx123.com
其中10.10.2.176為nginx伺服器的ip,結果可以在瀏覽器輸入www.xxx123.com, 可以看到果然轉發了。
以上就介紹了Nginx 設定反向代理,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。