Nginx反向代理设置

我对Nginx完全陌生,需要你的帮助。 基本上我有一个单一的IP地址的服务器,但我想在不同的域名服务器主机两个不同的Web应用程序。 所以,基本上,对于每个域名,我希望它redirect到不同的端口号。 我在下面尝试,并得到一个错误

[root@mysvr nginx]# nginx -t -c /etc/nginx/nginx.conf nginx: [emerg] "proxy_pass" directive is not allowed here in /etc/nginx/nginx.conf:41 nginx: configuration file /etc/nginx/nginx.conf test failed 

以下是Nginx设置。 第41行是proxy_pass的位置。

 server { listen 80; server_name server1.com www.server1.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://127.0.0.1:1003; } server { listen 80; server_name server2.com www.server2.com; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_pass http://192.168.1.1:1004; } 

谢谢!

如果你检查了proxy_pass的文档, proxy_pass需要在一个locationif in locationlimit_except块。 你有一个server块。

尝试使用替换您的proxy_pass使用

 location / { proxy_pass ... }