当$ _GET变量包含值“http://abc.com”时,页面返回“Forbidden。您无权访问此服务器上的/get.php。”
您可以在http://softwareholic.com/get.php处尝试(使用var_dump($ _ GET)输出;)
没关系
softwareholic.com/get.php?link=123 //output: array(1) { ["link"]=> string(3) "123" }
softwareholic.com/get.php?link=http:// //output: array(1) { ["link"]=> string(7) "http://" }
这些将失败
softwareholic.com/get.php?link=http://google.com
softwareholic.com/get.php?link=http%3A%2F%2Fgoogle.com
事情是他们在我的localhost和downtownhost.com上工作。该问题仅出现在hostgator.com上。我也删除了.htaccess以缩小范围。
有什么想法吗?
答案 0 :(得分:1)
您的主机正在强制执行403
作为安全措施,可能是为了防止Open Redirect个漏洞。
您真的需要由用户重定向到任何给定的网址吗?如何在数据库表中存储可能的URL,并在查询字符串中传入ID,然后查找和重定向。