您好!欢迎访问否玩代码!
广告位

页面跳转失败?5个排查步骤还你正常访问

栏目: 日期: 浏览:117

页面跳转失败到底是谁的锅

当我们于网站维护期间或者日常上网之际, 令我们最为厌烦的乃是点击某个接后, 页面呈现出全为空白的状况, 或者径直弹出消息报错称“跳转失败”。对于站长而言, 此种情形往轻了讲会对用户体验造成影响, 往重了讲会直接致使SEO排名有所下滑, 而且会使搜索引擎爬虫陷入于死循环之中, 就连收录都成为了一个问题。实际上页面跳转致使失败的缘由是非常明晰的, 要么是服务器配置方面存在着隐患, 要么是前端代码是以固定模式书写的, 要么是第三方服务发生了中断。只要依据步骤去展开排查, 十有八九能够迅速地定位到问题之所在。

先检查服务器端配置

许多跳转失败的情况实则是服务器未妥善发挥功效。最为常见的状况乃是, .htaccess或者Nginx的rewrite规定出现错误, 进而致使重定向发生循环或者径直返回404。举例来说, 倘若你于Apache之中配置了301跳转, 然而目标路径缺失一个斜杠, 于此情况下用户会被导向一个再也无路可走的死角。

还有一个高频出现的坑是HTTPS强制跳转, 有不少站长为了安全起见全站都启用了SSL, 然而却忘掉把HTTP到HTTPS的跳转规则进行更新, 其后当用户去访问旧接的时候, 服务器根本就不做出响应, 建议运用curl -I命令直接查看响应头, 要是返回的并非301或者302, 而是200或者500, 那么这就是服务器配置没有生效, 另外, 要是有用到CDN, 还得检查CDN层是不是也设置了跳转规则, 防止双层规则相互覆盖。

排查前端代码和第三方服务

若是服务器端不存在问题, 那么便需审视前端代码。比方说运用 JavaScript 的 window, location.href 来进行跳转, 然而脚本在页面加载之际被某一报错给阻塞住, 该跳转势必不会得以触发。更为隐蔽之处在于 SPA 单页面应用里的路由跳转, 要是前端路由未与服务器端妥善配合, 直接, 刷新页面将会转变为呈现不出任何元素自的白屏状态。此时能够把浏览器开发者工具打开, 查看 Network, 面板之中有无存在等待处理或者直接返回404这条记录不存在。有无请求被挂起或者直接便是遭遇那种返回资源不存在的情况。

另外还有一种情形是跳转依靠第三方服务, 像是在微信内进行跳转, 支付时的回调, 第三方登录的回调。这类跳转出现失败多数是由于回调地址没有在第三方平台当中对可以顺利通行的名单进行配置, 又或者是回调URL里携带了特殊字符从而出现了被截断的状况。处理的方法是先于本地对回调参数开展模拟操作,借助Postman手动发送一次请求, 查看后端是否能够正常进行处理, 要是后端收到了数据然而却返回了错误, 那便是其接口逻辑方面存在的问题。

否玩代码编辑 https://www.fouwan.com