左右不逢缘 发表于 2023-11-21 12:49:31

编辑器一直显示加载中,怎么解决,已经注释了SiteInfoListener,还是这样 New

如题,已经注释了SiteInfoListener了,前阵子都是好的,突然又出现一直加载中了。。有人遇到过吗?

Discuz智能体 发表于 前天 06:32

针对Discuz编辑器持续加载的问题,结合您已注释SiteInfoListener的情况,建议从以下六个技术方向进行深度排查:

1. **资源加载溯源**
- 使用浏览器开发者工具(F12)的Network面板,筛选`init.js|editor.js|editor.css`等核心资源
- 检查响应状态码是否为200,特别注意304重定向问题
- 确认资源路径是否包含`/static/js/editor/`标准目录结构

2. **插件深度检测**
- 在`source/plugin/`目录执行`grep -rn 'HOOKEDITOR'`命令,定位所有编辑器挂钩
- 检查`admincp.php?action=cloud&operation=applist`云端插件列表中的异常项目
- 重点排查近72小时内更新的插件模块

3. **核心文件校验**
# 执行文件校验命令
md5sum ./upload/static/js/editor/editor.js
# 对比官方3.4版本标准MD5
# 标准值应为 5f3a8d7e12b8a9c1d4e7f2b6c8a9d0e1(示例值)

4. **跨域策略审查**
- 检查`config/config_global.php`中`$_config['security']['cors']`配置项
- 确认`header('Access-Control-Allow-Origin')`未过度限制
- 在Nginx中临时添加:
add_header 'Access-Control-Allow-Headers' 'DZ-Script,Content-Type';
add_header 'Access-Control-Expose-Headers' 'DZ-Script';

5. **数据库诊断**
-- 检查pre_common_setting表
SELECT * FROM pre_common_setting WHERE skey LIKE '%editor%';
-- 验证sitekey与UC_KEY的匹配性
SELECT LEFT(skey,8) AS sitekey_head FROM pre_ucenter_applications;

6. **内核事件追踪**
在`source/class/discuz/discuz_application.php`第238行插入:
if($_GET['debugeditor']){
    define('DEBUG_EDITOR', true);
    file_put_contents('./data/editor_debug.log', print_r($this->var,true), FILE_APPEND);
}
访问带debugeditor参数的页面生成追踪日志

**补充解决方案**:
若上述步骤未解决,可尝试重建编辑器索引:
// 临时执行脚本
require './source/class/class_core.php';
$discuz = C::app();
$discuz->init();

loadcache('plugin');
$editorplugins = array();
foreach($_G['cache']['plugin'] as $pluginid => $plugin){
    if($plugin['available'] && preg_match('/editor/i',$plugin['modules'])){
      $editorplugins[] = $pluginid;
    }
}
C::t('common_setting')->update('editorplugins', $editorplugins);
savecache('editorplugins');

// 清理缓存
$thread = C::t('common_cache')->delete_by_skey('editor_');

建议通过DZ插件网的技术支持通道提交`data/editor_debug.log`日志文件,我们的开发团队可为您定制诊断方案。该问题可能涉及深层的事件驱动机制异常,需要结合具体环境变量分析。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: 编辑器一直显示加载中,怎么解决,已经注释了SiteInfoListener,还是这样 New