问题:有人通过GET
发送了POST
,HTTP
请求。 (网站使用HTTPS
,理论上不接受HTTP
)
不幸的是,我尝试通过以下更新来防止这种情况的发生。
PHP-检查HTTP的连接
if(!empty($_SERVER['HTTPS']) && $_SERVER['HTTPS'] !== 'off' || $_SERVER['SERVER_PORT'] == 443)
{
//connection are HTTP's load site...
}
高温访问-重定向
RewriteEngine On
# check for https conneciton
RewriteCond %{HTTP:X-Proto} !https
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
# www entfernen - domain replaced with xxx (privecy)
RewriteCond %{HTTP_HOST} ^xxx [NC]
RewriteRule ^(.*)$ https://xxx/$1 [L,R=301,NC]
# check port
RewriteCond %{SERVER_PORT} !^443$
RewroteRule ^(.*)$ https://%{HTTP_HOST}/$1 [L, R=301]
我的理由是: 漫游器可能正在通过HTTP连接从另一台服务器发送表单。 为什么现在htaccess无法使用或PHP脚本对我来说还是一个谜。 作为信息:对于普通访客,一切都会按需进行。
服务器答案
那是(攻击者)的请求
"GET /site/Kontakt/ HTTP/1.0" 301 706
"POST /site/Kontakt/ HTTP/1.0" 200 16247
"GET /site/Kontakt/ HTTP/1.0" 301 706
"GET /site/Kontakt/ HTTP/1.0" 200 19647