有使用Open Journal Systems期刊管理系统(OJS)的同学咨询,想修改一个页面模板,但是在对OJS系统进行二次开发时,页面和程序改了后,打开网址后页面却没有变化,修改没有起到效果,无论怎么刷新也是不行,这是怎么回事呢?
问题分析
经过丁老师对该问题和故障的分析,发现程序代码没有问题,应该不是由二次开发引起的故障。然后在服务端把相关文件进行了删除,但打开网址却还能正常显示,这时候丁老师大概明白了,这是由缓存引起的问题,即网页显示是读取的服务端缓存,二不是实时去调用程序去读取内容,这个时候我们只要找到这个缓存,去把他关闭就可以了。
解决方法
OJS系统是由PHP语言开发的,可能涉及的缓存包括:
1.Php自带的OpCache,需要在php.ini文件中关闭
opcache.enable=Off
opcache.enable_cli = Off2.Redis,是PHP常用的第三方存储缓存,Redis不是服务器必备,但可以检查一下服务器是否安装,如果安装的话可以停止服务
#Windows
redis-server --stop 或 redis shutdown
#Linux
systemctl stop redis3.Memcached,同Redis一样,也是第三方存储缓存。如果服务器安装,则可以关闭
systemctl stop memcached4.OJS自带的web_cache,这是OJS系统自带的页面缓存,默认为off不开启状态,如果为on开启状态的话,则修改模板和程序的话,不支持实时生效。可以在config.inc.php中进行配置。
web_cache = Off
web_cache_hours = 1全文总结
以上是关闭OJS系统缓存的方法,只要按照以上步骤,检查4个缓存是否开启并关闭,100%可以解决OJS系统的缓存问题,保证页面数据和变动实时生效。
丁老师从事学术软件研发十余年,可提供OJS系统的安装、维护、升级、Bug修复、二次开发等服务。
如需专业OJS系统技术服务,可以联系丁老师,同时也欢迎学术界的各位作者、学者、同行,针对学术软件信息化进行交流和咨询。
有使用OJS期刊投稿管理系统的小伙伴提问,最近在给评审发送邮件通知时,经常会遇到邮件据收被退回的情况,这是怎么回事呢?如图:遇到这种情况,需要先测试OJS的发信功能是否正常,具体可以通过:1.忘记密码,找回密码,发送重置密码邮件方式。2...
OJS系统是业界最权威的期刊管理系统,具有期刊管理、文章发布、评审、出版集一体的全流程功能。使用OJS期刊管理系统发表的论文文章,支持对接谷歌学术(Google Scholar),可在谷歌学术中进行索引和查询。关于谷歌学术索引,您需要知...
近期有使用做期刊运营客户咨询,OJS系统是否支持引用?如果支持的话,如何在OJS系统中,给收录的每篇文章加上引用?类似百度学术的引用功能呢?如图:回复:OJS是支持文章引用功能的,在扩展插件中,使用Citation Style Lang...
近期网络安全形势严峻,各种病毒植入、挖矿程序、灰产推广木马始终侵扰着和影响着我们的网络资产。OJS(Open Journal Systems期刊管理系统)因是开源程序,且部分出版社用户使用的是OJS较早的老版本,因此颇受影响。本篇文章丁...