【发布时间】:2018-02-16 20:32:39
【问题描述】:
我有一个带有常规浏览器路由器(没有哈希)的单页应用程序。每当有人浏览页面并点击刷新按钮时,nginx 都会尝试在此路径上查找文件。因此,如果有人在 mypage.com/about 上,nginx 会查找 about 文件并以 404 Not Found 响应。如何解决这个问题?
我正在考虑使用通配符指定一个位置 - mypage.com/* 除了/api tho,因为此应用程序中的每个后端端点都以 api 开头。如何匹配除一个以外的所有路径?这是我的配置的样子:
upstream frontend {
server frontend:3000;
}
upstream backend {
server backend:8000;
}
server {
listen 80;
location /api {
proxy_pass http://backend;
proxy_set_header Host \$http_host;
proxy_set_header X-Forwarded-For \$proxy_add_x_forwarded_for;
}
location / {
proxy_pass http://frontend;
proxy_redirect default;
}
}
【问题讨论】:
标签: nginx server single-page-application