Soan 发表于 2024-3-15 20:38:35

页面无响应

经常出现页面无响应


扩展只有下面这几个



有无董哥:'(

S8F8ry 发表于 2024-3-15 22:55:35

你是只有在图片上这个网站中会遇到这种情况,还是在各种各样的网站上都会遇到呢?


按照我的经验,一般是在网页中存在极高负荷的运算处理,或者是有脚本运行死循环等错误时会出现这种弹窗。如果你经常能遇到这个现象,可以尝试暂时禁用掉某个插件来反向排查,可以考虑先排查下去广告插件,然后是翻译插件。

Soan 发表于 2024-3-16 03:28:10

S8F8ry 发表于 2024-3-15 22:55
你是只有在图片上这个网站中会遇到这种情况,还是在各种各样的网站上都会遇到呢?




我发现我第一次进入页面时不会卡,但是再进就会无响应{:3_57:}

Soan 发表于 2024-3-16 03:28:56

S8F8ry 发表于 2024-3-15 22:55
你是只有在图片上这个网站中会遇到这种情况,还是在各种各样的网站上都会遇到呢?




就只有图里这个论坛的网页会卡,第一次进不会卡,第二次进入同样的页面就会卡

S8F8ry 发表于 2024-3-16 13:48:46

我在这个网站上注册登录试了试,没能复现出这个问题,我觉得有可能是受某个插件的影响。

Soan 发表于 2024-3-16 15:47:52

S8F8ry 发表于 2024-3-16 13:48
我在这个网站上注册登录试了试,没能复现出这个问题,我觉得有可能是受某个插件的影响。 ...

你有空的时候能试试这个链接吗,进去回复之后关闭网页重进就无响应了{:3_58:}http://www.9dmsgame.net/forum.php?mod=viewthread&tid=247387&highlight=enb%CB%AE

S8F8ry 发表于 2024-3-16 20:53:42

Soan 发表于 2024-3-16 15:47
你有空的时候能试试这个链接吗,进去回复之后关闭网页重进就无响应了http://www.9dmsgame.net/fo ...

测试了下,是网站本身的问题,或者严格来说是网站所使用的 Discuz 模板的问题。我大致说一下导致页面卡死的原因:

static/image/hrline/5.gif


当链接带上 &highlight= 查询参数时,服务器 PHP 会向该网页的 HTML 模板中插入下面这段行内脚本元素:



图中圈出来的 47258628 应该是 PHP 某个 key 变量实例值,问题是该实例值是一个数字,这样会导致此 JS 代码创建的 relatedlink 数组变成一个长度为 47258629 的数组:



关键是在网站后续执行的脚本(http://www.9dmsgame.net/static/js/common_extra.js)代码中会遍历一次该 relatedlink 数组:



由于代码是同步执行的,所以网站需要等待此遍历操作完成才可以继续运行下去。而在 JS 里迭代一个四千多万数组,性能一般的设备基本上就是直接网页无响应了!

static/image/hrline/4.gif

解决方法:

如果有使用 uBlock Origin 之类的去广告插件,可以尝试添加下面的静态规则:
9dmsgame.net##+js(acs, relatedlinks)或者你可以联系该网站管理员,告诉他这个问题,让他修改模板对应代码,不要直接索引数组而是使用 push 方法。

frank 发表于 2024-3-17 04:40:17

:victory: 思路清晰 讲解详细 应对有方 超版超牛...:lol

frank 发表于 2024-3-17 04:40:58

S8F8ry 发表于 2024-3-16 20:53
测试了下,是网站本身的问题,或者严格来说是网站所使用的 Discuz 模板的问题。我大致说一下导致页面卡死 ...

:victory: 思路清晰 讲解详细 应对有方 超版超牛...:lol

Soan 发表于 2024-3-17 18:47:53

S8F8ry 发表于 2024-3-16 20:53
测试了下,是网站本身的问题,或者严格来说是网站所使用的 Discuz 模板的问题。我大致说一下导致页面卡死 ...

太专业了大佬{:3_50:}
页: [1]
查看完整版本: 页面无响应