我是Nginx的新手,需要你的帮助。 基本上我有一个单一IP地址的服务器,但我想在服务器内托管两个不同的域名。所以,基本上,对于每个域名,我希望它重定向到不同的端口号。我试过下面的错误
[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;
}
谢谢!
答案 0 :(得分:11)
如果您查看proxy_pass
的文档,则proxy_pass
需要位于location
,if in location
或limit_except
块中。你有一个server
块。
尝试使用
替换proxy_pass
的使用情况
location / {
proxy_pass ...
}