如何配置 nginx 以将所有 URL(未预先添加/api
或某些静态资源,例如 JS/图像)重定向到index.html
?原因是我在单页应用程序中使用 HTML5 推送状态 URL。意思是根据 URL 改变 AJAX 或 JS 的内容
我当前的 nginx 配置如下所示:
server {
listen 2000;
server_name localhost;
location / {
root /labs/Projects/Nodebook/public;
index index.html;
}
location /api/ {
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_pass http://localhost:3000/;
proxy_redirect off;
}
}