在部署环境时遇到一个问题,服务器上根据ajax返回结果进行重定向时出现了http://ip/uc://ip/uc情况:
重定向的url的获取是使用:$_SERVER['REQUEST_SCHEME']想打印http或者是https协议,但是部署的服务器上$_SERVER没有REQUEST_SCHEME这个key值,可以使用$protocol = (isset($_SERVER['HTTPS']) && (strtolower($_SERVER['HTTPS']) != 'off')) ? "https" : "http";获取协议
此外,由于没有http,window.location.href="://ip/uc";被认为是相对路径,所以就在采用相对当前url访问的目录,因此就出现了上述追加url的问题,此外,注意,ie6必须是用绝对路径
例子:window.location.href="icity365.net";------------>url::::::::http://localhost/test/icity365.net
本文探讨了服务器环境中使用ajax返回结果进行重定向时出现的问题,包括如何正确获取HTTP或HTTPS协议来构造完整的URL,以及避免浏览器将重定向视为相对路径的方法。
1368

被折叠的 条评论
为什么被折叠?



