LuRenJiasWorld / WP-Editor.md

或许这是一个WordPress中最好,最完美的Markdown编辑器
https://wordpress.org/plugins/wp-editormd/
GNU General Public License v3.0
746 stars 87 forks source link

[资源包损坏,资源包过时,按照指示设置照旧] #501

Closed fuchunliu closed 3 years ago

fuchunliu commented 3 years ago

BUG描述 | Describe the bug

插件资源包已损坏,请在下面提示链接中重新下载! 检验到插件资源包已过时,请在设置页面中进行配置!

复现方法 | To Reproduce

通过 WordPress 安装; 通过压缩包安装

期望行为 | Expected behavior

最新版不应该报错,按照08.“资源过时解决设置无效

截图 | Screenshots

[截图1]((https://blog.loven.cc/images/xxxzzz.1.png) [截图2]((https://blog.loven.cc/images/xxxzzz.2.png)

调试信息 | Debugging info

截图

其他内容 | Additional context

LuRenJiasWorld commented 3 years ago

你好,我这边没有遇到过这个问题。请问你的服务器可以正常联通外网吗?因为检查资源包损坏的原理是服务器请求CDN地址内的assets/version.json文件,并将其版本号与当前版本比对。如果服务器无法正常联通外网,则会出现该提示。

解决方法为:在设置中将静态资源地址从jsdelivr的CDN修改为本地地址,或考虑修复服务器无法联通外网的情况。参考CDN文件:https://cdn.jsdelivr.net/wp/wp-editormd/tags/10.2.1/assets/version.json

fuchunliu commented 3 years ago

你好,我这边没有遇到过这个问题。请问你的服务器可以正常联通外网吗?因为检查资源包损坏的原理是服务器请求CDN地址内的assets/version.json文件,并将其版本号与当前版本比对。如果服务器无法正常联通外网,则会出现该提示。

解决方法为:在设置中将静态资源地址从jsdelivr的CDN修改为本地地址,或考虑修复服务器无法联通外网的情况。参考CDN文件:https://cdn.jsdelivr.net/wp/wp-editormd/tags/10.2.1/assets/version.json

你好,设置静态资源也试过,一样的错误,我把之前从Wordpress安装的插件删了,用这里下载的一样也有问题。

LuRenJiasWorld commented 3 years ago

你好,我这边没有遇到过这个问题。请问你的服务器可以正常联通外网吗?因为检查资源包损坏的原理是服务器请求CDN地址内的assets/version.json文件,并将其版本号与当前版本比对。如果服务器无法正常联通外网,则会出现该提示。 解决方法为:在设置中将静态资源地址从jsdelivr的CDN修改为本地地址,或考虑修复服务器无法联通外网的情况。参考CDN文件:https://cdn.jsdelivr.net/wp/wp-editormd/tags/10.2.1/assets/version.json

你好,设置静态资源也试过,一样的错误,我把之前从Wordpress安装的插件删了,用这里下载的一样也有问题。

  • 服务器使用的阿里云共享虚机,连接外网应该没有问题,我更新Wordpress都没问题,安装插件也没问题,我本地试一下。

好的,可以在本地安装看看能否复现此问题。虚拟主机环境下,有可能因为主机商配置问题导致插件无法连通外网。

这里的version.json信息看起来是没有问题的,和你安装的版本一致。

调试信息同样没有问题。

  • 这个报错会影响使用吗?

如果能够正常启动本编辑器,且你的浏览器可以正常访问到对应的JS、CSS等静态资源文件,则不会有任何问题。相关检测和报错代码在这里:src/Utils/Settings.php#L139

LuRenJiasWorld commented 3 years ago

如果你熟悉PHP语言,可以尝试一下在你的虚拟主机中新建一个PHP文件:

<?php
echo file_get_contents("https://cdn.jsdelivr.net/wp/wp-editormd/tags/10.2.1/assets/version.json");
?>

然后在浏览器里打开对应的PHP文件,看看会不会产生报错。这样也许可以帮助我们更快定位问题。

fuchunliu commented 3 years ago

如果你熟悉PHP语言,可以尝试一下在你的虚拟主机中新建一个PHP文件:

<?php
echo file_get_contents("https://cdn.jsdelivr.net/wp/wp-editormd/tags/10.2.1/assets/version.json");
?>

然后在浏览器里打开对应的PHP文件,看看会不会产生报错。这样也许可以帮助我们更快定位问题。

php不会,我照着这个新建了一个文件放进去没有任何输出,一片空白。为了确保文件是能够运行的,我在前面输出了一个out: 测试链接

LuRenJiasWorld commented 3 years ago

明白了,说明你的虚拟主机存在连通性问题,正常返回结果应该是这样的:https://static.lurenjia.in/static/2020/10/20201030.php

你可以凭借这个代码的异常返回与阿里云技术支持联系,寻求相关帮助。

fuchunliu commented 3 years ago

明白了,说明你的虚拟主机存在连通性问题,正常返回结果应该是这样的:https://static.lurenjia.in/static/2020/10/20201030.php

你可以凭借这个代码的异常返回与阿里云技术支持联系,寻求相关帮助。

好的,谢谢。

fuchunliu commented 3 years ago

经过阿里云排查,也没告诉我什么问题,让我换主机试试。

我查看他们调试的记录,发现了一个开了日志的文件。我运行了一下发现如下警告:

SSL operation failed with code 1. OpenSSL Error messages: error:14090086:SSL routines:ssl3_get_server_certificate:certificate verify failed in

是 SSL 的问题造成的。(这个云主机默认关闭了PHP的错误,信息,所以我一直看不到错误信息。)

之前想安装一个邮箱插件也有这个问题,看来用这个云共享主机无解。

给楼主一个建议

fuchunliu commented 3 years ago

最后我改 httpshttp 解决。

🆗了,我可以关闭这个问题了,

谢谢楼主的耐心解答。

LuRenJiasWorld commented 3 years ago

好的,很高兴能帮助解决你的问题。但使用相对路径可能会造成更多问题,暂时不便处理。

我会在下个版本推出日志功能,收集本插件所有日志以供分析,这样后续解决问题可能会更方便些。