我正在尝试通过让 nginx 在响应之前对资源进行回查,将我的 SPA 设置为针对无效资源返回 404。所有这些都是为了避免带有 200 的无效页面,从而让蜘蛛爬取软 404 页面。
我想要的行为
Browser Nginx API
| -- GET myapp.com/users/12 --> | |
| | -- GET myapi:8000/users/12 |
| | <----------- 404 -------- |
| <-- 404 index.html ------------ |
| |
我希望我的配置如下所示
server {
listen 80;
server_name localhost;
root /usr/share/nginx/html;
index index.html;
location /users/ {
# 1. Fetch from myapi:8000
# 2. Return index.html with status from fetched URI
}
}
我已经研究了一段时间,但我对如何实现这一点有点迷茫。我已经看到了很多简单的例子try_files
等等,但似乎没有什么适合我的情况,因为似乎大多数例子都是非常简单的转发。
我怎样才能实现上述行为?