Why try_files? (prerender.io nginx )



我看不懂 https://prerender.io 的官方nginx会议

为什么try_files?

使用try_fileslocation @prerender永远不会被解雇!

我正在寻找以下行为:

如果从浏览器访问任何页面,nginx会静态/本地提供它。如果该网页是从某个抓取工具访问的,则代理会提供该网页。

官方片段似乎没有这样做,但官方文档说:

您在服务器上安装的 Prerender.io 中间件将检查每个请求,以查看它是否是来自爬网程序的请求。如果是来自爬虫的请求,中间件将向 Prerender.io 发送该页面静态 HTML 的请求。如果没有,请求将继续到正常的服务器路由。爬网程序永远不会知道您正在使用 Prerender.io 因为响应始终通过您的服务器。

有人可以帮助我理解这一点吗?

Todd 来自 Prerender.io 这里。

我们建议使用如下try_files:

try_files $uri @prerender;

这样做是为了$uri可以匹配静态文件(图像等(,然后,如果未找到,则运行@prerender配置。

有时,我们会看到$uri匹配的/index.html 对于返回单页应用程序的 html 文件的每个请求。如果是这种情况,您可以删除try_files,而只需将@prerender位置的内容复制到您需要它的任何位置,以便在提供索引.html文件之前运行。

最新更新