Nginx 中使用 http:// 过滤请求

Nginx 中使用 http:// 过滤请求

有没有办法过滤类似“GEThttp://example.com“但不过滤像“GET /index.html”这样的变量?换句话说,可以在“If”子句中使用的 Nginx 变量是什么?

问这个问题的原因是我在我的网站日志中看到多个类似这样的请求:“GEThttp://somesite.com/proxyheader“来自搜索免费代理服务器的用户。

答案1

这在 0.8.41 中对我有用:

if ($request ~* "^[^ ]+[ ]+[^:]+://" ) { return 400; }

答案2

您检查过 nginx 配置中的变量吗?

关联:链接文本

你能给我们展示一下你的日志文件吗?http://somesite...一个参数(http://example.com/http://seomsite...)?

此致敬礼,本。

相关内容