最近尝试使用nginx来提供一些静态的json文件来作为配置,最为简单的做法就是提供下面这样的配置了:
1 | location ~ ^/myconf/(?<filename>.*)$ { |
但是问题来了,如果匹配不到配置文件的话,直接返回的是nginx的404页面,为了能让前端代码更容易地处理下这种情况,可以加点配置,让文件找不到的时候直接返回空的json对象,于是配置可以改成下面的这样:
1 | location ~ ^/myconf/(?<filename>.*)$ { |
现在的话,如果文件不存在的话,就可以返回一个空的json对象了。
但是问题又来了:这种情况下nginx的error.log里面又记录了一次404的错误事件,于是还需要继续改下配置,把not found的日志给关掉:
1 | location ~ ^/myconf/(?<filename>.*)$ { |
这下就OK了。使用Nginx静态文件能力来做一些简单的接口还是很方便的。