OJS无法加载插件页-TinyMCE and 500 Server Error的解决方法

所属专题:OJS期刊管理系统 来源: 丁老师原创 更新时间:2025-05-15 08:22 浏览: 1104 IP属地: 深圳
ojs期刊系统安装搭建
点击阅读全文

最近有一家秘鲁的出版社客户,在OJS软件的使用中,遇到了故障,插件页(plugin)一直在加载,页面一直在转圈,始终打不开,咨询了丁老师。故障图:

263fea018237ac0adc8b5a4d64cee94cbb255ee8_2_1035x580.jpeg

ea70ed682d0876791d8a61cec510dd7b50a4f52a.jpeg

初步分析:
丁老师经过分析后,初步认为这是由第三方插件引起的故障,导致页面程序无法正常执行,tinymce编辑器无法正常的初始化,前端JS报错。

故障分析:

根据客户提供的服务器信息,丁老师登录服务器查看了ojs系统运行的日志、数据库日志、以及程序错误日志,日志内容如下:

[06-May-2025 21:57:05 UTC] PHP Fatal error:  Uncaught Error: Call to a member function getCurrent() on null in /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/lib/pkp/classes/site/VersionDAO.inc.php:103
Stack trace:
#0 /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/lib/pkp/classes/controllers/grid/plugins/PluginGridHandler.inc.php184): VersionDAO->insertVersion(NULL, true)
#1 /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/controllers/grid/settings/plugins/SettingsPluginGridHandler.inc.php(36): PluginGridHandler->loadCategoryData(Object(Request), 'generic', Array)
#2 /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/lib/pkp/classes/controllers/grid/CategoryGridHandler.inc.php(124): SettingsPluginGridHandler->loadCategoryData(Object(Request), 'generic', Array)
#3 /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/lib/pkp/classes/controllers/grid/CategoryGridHandler.inc.php(473): CategoryGridHandler->getGridCategoryDataElements(Object(Request), 'generic')
#4 /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/publi in /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/lib/pkp/classes/site/VersionDAO.inc.php on line 103

根据日志可以看出,是PluginGridHandler.inc.php这个程序出错,插件无法正常加载,继续往下看。

[06-May-2025 21:37:24 UTC] PHP Warning:  require_once(OJSDynamicStatsPlugin.inc.php): failed to open stream: No such file or directory in /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/plugins/generic/ojsDynamicStats/index.php on line 11
[06-May-2025 21:37:24 UTC] PHP Fatal error:  require_once(): Failed opening required 'OJSDynamicStatsPlugin.inc.php' (include_path='.:/opt/ecp-php74/lib/php') in /var/www/8a152391-1500-44f6-8b96-83b99c8204a6/public_html/plugins/generic/ojsDynamicStats/index.php on line 11

这个时候就能发现,原来是OJSDynamicStatsPlugin(OJS动态统计插件)的问题。该插件由客户自行安装,但是该插件的最新版本,与客户OJS系统版本不匹配,所以无法正常使用,最终导致整个OJS插件部分报错故障。

故障解决:
1.登录服务器,进入OJS主程序目录,找到该插件,删除该插件;
2.在数据库的plugin_settings中,删除该插件;

使用建议:
1.OJS系统的插件,大部分都是由第三方公司或机构开发的,随着OJS主程序版本的更新,插件也必须保持同步更新才能使用。如果插件没有开发更新为和OJS匹配的版本,插件是无法使用的,并且也会导致OJS主程序的故障;
2.OJS期刊投稿系统,已经满足了期刊投稿、评审、发布出版、数据库收录的主要功能,插件则是一些辅助性的、锦上添花的东西,如无必要,不建议开启;
3.插件不是越多越好,开启的插件越多,导致OJS系统出现故障的几率就越大。因此不建议开启多个插件,更不建议安装第三方来历不明的插件。

ojs相关文章

OJS提示Uncaught Error: C...

有同学在我们的期刊管理运营群里提问,在对OJS(openjournalsystems)二次开发的过程中,报了个500错误,打开错误日志后显示Uncaught Error: Class "pkp\controllers\jour...

OJS如何导入文章?

很多同学,他们在使用OJS之前,自己的网站已经发布了很多期刊文章,在使用OJS之后,有什么办法,可以把这些文章的数据一次性导入到OJS中呢?今天丁老师给你解答。OJS导入文章的方法:1.用管理员账号进入Dashboard,左侧菜单选择T...

OJS给文章加上引用功能的方法

近期有使用做期刊运营客户咨询,OJS系统是否支持引用?如果支持的话,如何在OJS系统中,给收录的每篇文章加上引用?类似百度学术的引用功能呢?如图:回复:OJS是支持文章引用功能的,在扩展插件中,使用CitationStyleLangua...

OJS可以在线支付吗?支持哪种支付方式?

经常有小伙伴提问,OJS支持在线支付吗?如果我们想实现作者投稿时付费,是否可以实现这个功能呢?丁老师为你解答。关于OJS的在线支付功能,答案是肯定的。OJS期刊投稿系统支持在线支付,该软件提供了管理订阅和作者费在线支付的功能,如图:目前...