我希望我的网站能防止主机头注入,为了实现这一点,我在PHP中应用了以下代码。
$allowed_hosts = [
"127.0.0.1",
"localhost",
"10.x.x.28"
];
if (isset($_SERVER['HTTP_HOST']) && !in_array($_SERVER['HTTP_HOST'], $allowed_hosts)) {
http_response_code(403);
die();
}
if (isset($_SERVER['SERVER_NAME']) && !in_array($_SERVER['SERVER_NAME'], $allowed_hosts)) {
http_response_code(403);
die();
}
当我使用BurpSuite检查它时,它对http://localhost/mysite/(带一个尾随斜杠)工作正常,但当我访问http://localhost/mysite(不带尾随斜杠)时,上面的代码没有任何效果。
请建议我,如果我必须配置服务器或必须写代码。
1条答案
按热度按时间qij5mzcb1#
将这些行添加到
.htaccess
文件中我希望这能奏效。