nginx location 规则使用正则时改写 request_uri 报错

今天在配置 nginx 缓存时,遇到一个棘手的问题,开发反馈需要实现缓存特定路径下的数据,并且要能手动清除缓存。缓存配置和清除的办法在前面已经有介绍,但是给出的路径中间有一位会变动,也就是说需要 location 正则匹配区分。 “众所周知”,location 区块匹配正则表达式时,内部 proxy_pass 如果继续配置使用 request_uri 改写功能(即 http://somewhere/path 形式)会报错不可用,那要怎么解决这个需求呢?事实情况并没有这么简单。

nginx 使用 websocket 的配置参数

网上有很多 nginx 配置 websocket 的文章,要么配置复杂,罗列了很多没有意义的参数配置,要么只是写出几个关键参数无法保证所有访问的兼容性。 这里我也简要记录一次 websocket 配置修改过程,给出一种配置办法。