我使用Nginx在我的VPS上创建服务器块。所以现在我可以访问myname.com和myname.me。问题是我在我的服务器上使用php和node.js。所以我希望当我输入myname.com作为url时默认使用端口80,当我输入myname.me时,它会指向我的节点服务器使用的端口3000,而不是输入myname.me:3000。
如果我的描述不清楚,请告诉我。
谢谢!
答案 0 :(得分:1)
您应该使用Nginx Reverse Proxy
对于您的用例,只需将您的服务器块更改为
即可server {
listen 80;
server_name myname.com;
location / {
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_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:80;
proxy_read_timeout 90;
proxy_redirect http://localhost:80;
}
}
server {
listen 80;
server_name myname.me;
location / {
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_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:3000;
proxy_read_timeout 90;
proxy_redirect http://localhost:3000;
}
}