我有一个 angularjs 应用程序,它也有一个博客。此网址显示所有博客文章
http://example.com/blog/
以及具体的博文下
http://example.com/blog/example-blog-post-title
现在我正在为 SEO 目的预编译博客文章的 HTML,我想将它们与我的主应用程序完全分开,如下所示:
...
root "/home/ubuntu/client/public";
location / { ## Handle default requests ##
try_files $uri $uri/ /index.html;
}
location /blog { ## serve precompiled blog HTML
alias /home/ubuntu/bloghtml;
try_files $uri.html $uri/ index.html;
}
...
这有效,通过转到http://example.com/blog/example-blog-post-title nginx 成功地提供文件 /home/ubuntu/bloghtml/example-blog-post-title.html
但是问题是,在这种情况下,nginx 没有正确地将http://example.com/blog/下的博客文章列表路由到我的主要 Angular 应用程序,我在该 URL 上收到错误 403。
我尝试在 conf 文件中更改location /blog
为location /blog/
,这使得http://example.com/blog/工作,但是我在http://example.com/blog/example-blog-post-title上得到 404 错误
我怎样才能使这两种情况都有效?