我正在开发一个应用程序,其中我有一个下面的项目:
我想做的事情很简单:我想重定向使用nginx连接,将子域转到端口3000,从而显示react应用程序。
为此,我正在使用这个文件,我将输入/etc/nginx/sites启用/。目前,当我连接到my_domain.com时,我有nginx的默认页面,没有重定向到ip_address:3000。
server {
listen 80;
server_name my_subdomain www.my_subdomain.com;
location /{
proxy_set_header Host $http_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://ip_address:3000;
}
}发布于 2021-05-12 09:28:25
考虑到您正在连接到www.my_subdomain.com,而不是通过https连接,您的代理看起来是正确的。您应该验证您的配置是否已加载,我记得有些nginx服务器只加载启用/*..conf的站点,检查/etc/nginx/nginx.conf行:
include /etc/nginx/sites-enabled/*.conf;另外,一个react应用程序只是一些静态文件,所以您可以让它们直接由nginx提供服务,没有必要代理它。
发布于 2021-05-16 19:05:24
如果有人和我面临同样的问题,我会给出这个答案。正如所接受的答案所述,代理是正确的。问题的根本原因是子域需要一段时间才能生效。
另外,如果您想直接从Nginx提供应用程序静态文件,下面是一个很好的教程。
https://serverfault.com/questions/1063299
复制相似问题