nginx如何指定文件不代理直接返回

/ 默认分类 / 没有评论 / 153浏览

我的博客程序是tale,用nginx代理了一下实现https。原始的nginx.conf配置如下:

        location / {
             proxy_pass http://denganliang.com:9420;
        }

这份配置会把所有的http请求都转发到tale进行处理。我想自己写一个html页面,挂在自己博客上,发现无法实现,因为tale不支持自己上传html展示。于是就必须在nginx代理上做文章了。 nginx有一个特性,就是可以查找某些文件,如果存在直接返回,不存在就走指定的代理,修改了一下nginx.conf如下:

        try_files $uri $uri.html  @tale;

        location @tale {
             proxy_pass http://denganliang.com:9420;
        }

这样我就可以在/usr/share/nginx/html 这个目录下放html文件,访问的时候写完整路径就可以完整访问了。例如: https://denganliang.com/404.html

这篇文章参考了:Nginx 配置简述