有使用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期刊管理系统(Open Journal Systems)的一款优秀的开源软件,集多期刊管理、论文投稿、专家评审、出版发布、学术数据库收录等多个功能,是学术期刊行业最主流、最流行、使用范围最广泛的软件系统,目前已覆盖148个国家和地...
经常有小伙伴提问,OJS支持在线支付吗?如果我们想实现作者投稿时付费,是否可以实现这个功能呢?丁老师为你解答。关于OJS的在线支付功能,答案是肯定的。OJS期刊投稿系统支持在线支付,该软件提供了管理订阅和作者费在线支付的功能,如图:目前...
有些同学在使用OJS期刊管理系统的时候,有时候时间太久没登录,可能会忘记OJS系统管理员账号admin的密码,这个时候该怎么办呢?别着急,有好几种方法可以重置OJS系统admin的密码,今天丁老师就教给你。方法一:通过邮箱找回1.在OJ...