我想根据Http请求的自定义头文件来接受拒绝请求。IIS和NGINX有什么选项吗?
我想IIS有,但NGINX呢???
URL重写入站规则可以根据请求头来拒绝请求。例如,如果你的自定义请求头是AuthHeader。那么你只需要添加一个条件模式为{HTTP_AuthHeader}。
拒绝规则的示例是这样的。
<rule name="deny rule" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_AuthHeader}" pattern="jokies" />
</conditions>
<action type="AbortRequest" />
</rule>
如你所见,当请求头AuthHeader=jokies时,IIS返回504。
如果AuthHeader不匹配jokies,IIS返回200。
当然,你可以开发并注入你的自定义httpspmodule来定制请求头过滤器。