node.js - Nginx 重定向到 Node.js 后端
问题描述
我想将 URL(例如 domain.com/api/)重定向到特定的 Node.js 服务器,根 URL 显示我的网站。目前我使用这个配置:
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
location /api {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:3031/;
proxy_ssl_session_reuse off;
proxy_set_header Host $http_host;
proxy_cache_bypass $http_upgrade;
proxy_redirect off;
}
但它不起作用。
出了什么问题?
感谢您的帮助和最好的问候:)
解决方案
您在 location /api 部分之后忘记了右括号。您的配置在我的机器上工作。
server {
listen 80 default_server;
listen [::]:80 default_server;
root /var/www/html;
server_name _;
location / {
try_files $uri $uri/ =404;
}
location /api {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:3031/;
proxy_ssl_session_reuse off;
proxy_set_header Host $http_host;
proxy_cache_bypass $http_upgrade;
proxy_redirect off;
}
}
此外,您的 nodejs 后端必须处理“/api”请求。
推荐阅读
- c# - 如何为标题中的 DataGrid 列使用多语言的本地化扩展
- regex - 如何在除根目录之外的所有子文件夹上设置 410 响应标头?
- service-worker - 用户通过服务人员离线后如何显示来自 GET ajax 调用的响应?
- sql-server - 避免在 SSRS 表达式中区分大小写
- excel - 如何比较多个字符串变量以对 VBA 中的数据求和?
- python - 如何在用户输入提供的列表中查找字符串或字符串的一部分?
- javascript - 如何阻止 VS Code 在保存时完全破坏我的代码?
- python - 在 views.py 中构建 highcarts 选项
- javascript - Event.target.id 返回一个空字符串?
- python - IDL 中的 TEPMPORARY 函数在 Python 中有类似的吗?