使用nginx try_files的奇怪行为.我的配置有什么问题?
os:debian stable(挤压) try_files对我来说很奇怪. 这可以按预期工作,如果没有找到$uri就会被尝试 – >>使用@static位置
只是在最后添加一个= 404导致404.如果我访问位于$uri或@static的现有文件,它是否仍然可以工作,如果在@static位置找不到任何内容,则仅提供404?
在@static之前放置= 404使其再次起作用.为什么?
我很困惑 编辑:我的目标是:测试文件是否在本地,然后检查所有上游服务器的文件,如果在这些位置找不到,则返回404 配置:
最佳答案
你误解了try_files参数.引自docs:
只有最后一个参数是后备URI(或命名位置或代码),所有其他参数都是要测试的文件.即
将检查文件根目录下的文件(/ file1,/ file2,/ file3等),如果没有找到,nginx将执行内部重定向到@fallback. try_files … @static = 404;没有意义,因为它将测试文档根目录下名为@static的文件,并且很可能不是你想要的. try_files … = 404 @static;没有意义,因为它将测试名为= 404的文件. 请参阅此处了解文档:http://nginx.org/r/try_files. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- nginx – 找不到包php5-fpm
- Nginx/PHP-FPM =空白页面
- node.js-是否应将Nginx和HAProxy都用于生产节点应用程序?
- ruby-on-rails – ubuntu 10.04中的“update-rc.d:/etc/
- nsx.conf中ssl_ciphers行的含义
- linux – 用于查找SSH服务器守护程序和Nginx的正常运行时间
- nginx – 如何在一个虚拟服务器上使用ssl_verify_client =
- nginx在AppArmor策略中真的需要dac_override吗?
- apache-Nginx反向代理配置
- 如何代理http_x_ssl_client_s_dn标题?