gpt4 book ai didi

apache - 如何阻止 POST 请求的 IP,但不阻止 GET?

转载 作者:行者123 更新时间:2023-12-03 04:06:45 31 4
gpt4 key购买 nike

我有一个网站,其中收到了大量垃圾评论。看看垃圾邮件的来源 IP 地址,它们大多来自那些不太可能有人愿意与我的英语网站互动的国家,因此我简单地阻止它们是有意义的。

这应该非常简单,但是我希望来自这些国家/地区的流量能够真正查看我的内容,而不是访问评论、注册等表单。因此,我希望允许他们发出 GET 方法请求,而不是 POST 方法请求。

理想情况下,我希望在网站的 .htaccess 文件中执行此操作,而不是将其实际编码到为网站提供支持的 PHP 脚本中。经过一番搜索,我发现我认为正是我需要的: 。看来我可以完全按照上面的描述做:

# Block China, Russia etc. from POSTs and similar methods
<Limit POST PUT DELETE>
order deny,allow
deny from 210.5.214.128/29
deny from 210.89.69.160/28
# Hundreds more lines...
# My current IP (sample provided here, actual used in reality), to test
deny from 100.100.100.100
allow from all
</Limit>

# Allow anyone to do GETs and HEADs
<Limit GET HEAD>
order deny,allow
allow from all
</Limit>

但是并没有达到预期的效果。我可以执行 GET 请求(根据需要),但 POST 仍然可以正常工作,我可能会收到 403 Forbidden 错误。

如果我不使用该标签并将我的 IP 放入拒绝列表中,它确实会成功阻止我访问该网站(GET 和 POST)。

谁能告诉我我需要改变什么?

最佳答案

像这样更改允许拒绝的顺序:

<Limit POST PUT DELETE>
order allow,deny
allow from all
deny from 210.5.214.128/29
deny from 210.89.69.160/28
# Hundreds more lines...
# My current IP (sample provided here, actual used in reality), to test
deny from 100.100.100.100
</Limit>

<Limit GET HEAD>
order deny,allow
allow from all
</Limit>

关于apache - 如何阻止 POST 请求的 IP,但不阻止 GET?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18534674/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com