;jsessionid=导致的Nginx 的静态文件图片404异常处理

2024-01-15 by Jinyang | Filed under 技术相关.

观察nginx的error.log发现有大量的 open() 文件名 No such file or directory 的错误,原因是本应请求 https://www.huxing.com/lbsimg/50255ae7367a11ee90eb00f1f30222b6_roadmap.png 的实际请求为 https://www.huxing.com/lbsimg/50255ae7367a11ee90eb00f1f30222b6_roadmap.png;jsessionid=1A5A80F68EA0FE62C9F0E8443450C0B8 ,于是nginx就会去尝试指定目录下的文件访问 50255ae7367a11ee90eb00f1f30222b6_roadmap.png;jsessionid=1A5A80F68EA0FE62C9F0E8443450C0B8 所以就报错了 。

搜了下倒是也有类似的错误再寻求答案,但是确实没找到合适的能直接用的。经过分析尝试发现使用rewrite 比较符合预期:

rewrite “^/lbsimg/([0-9a-z_]+(.png));jsessionid=.+$” /lbsimg/$1 last;

测试访问原来的404异常的页面发现可以正常浏览,nginx error.log 不再出现该404异常了。


One Response to “;jsessionid=导致的Nginx 的静态文件图片404异常处理”

  1. Jinyang says:

    也没啥技术含量,只是花费了一小时时间尝试解决并解决了就想记录下来方便别人。

发表评论

您的电子邮箱不会被公开。 标记为 * 的区域必须填写

返回顶部