gogobody / TpCache

一个 typecho 缓存插件
MIT License
41 stars 12 forks source link

前台配置在后台没有生效 #7

Closed zurica2013 closed 2 years ago

zurica2013 commented 2 years ago

Typecho 1.2.0 + php 8.0/8.1,都是容器化部署,容器里装了相应的php-extension,也分别启动了memcached和redis的容器。可以正常配置没有报错信息,但是发现在网页上的改动(主机地址写容器的172.18.0.4)在后台并不会生效(typecho_memcached.class.php),依然是127.0.0.1。用其他方式验证了 memcached 缓存可以生效,但是不确定插件到底有没有生效。

zurica2013 commented 2 years ago

另外发现开启插件后,文章预览会报错:Call to a member function getPathInfo() on null,文章删除会报错:Failed opening required 'driver/typecho_0.class.php' (include_path='.:/usr/local/lib/php'),看来对容器不太友好:sob:,我再找找原因

zurica2013 commented 2 years ago

配置没有生效的问题貌似解决了,插件的属组全部要改成跟容器内一致,默认下载来是 root(但是其他主题文件同样是 root 属组使用并没有问题)。不能删除文章的问题也解决了,但是无法预览的问题还是存在~~

gogobody commented 2 years ago

你可以开debug看具体报错行

zurica2013 commented 2 years ago

你可以开debug看具体报错行

Call to a member function getPathInfo() on null
Error: Call to a member function getPathInfo() on null in /app/usr/plugins/TpCache/Plugin.php:492
Stack trace:
#0 [internal function]: TpCache_Plugin::cache_contentEx('<p>456</p>', Object(Widget\Archive), NULL)
#1 /app/var/Typecho/Plugin.php(446): call_user_func_array(Array, Array)
#2 /app/var/Widget/Base/Contents.php(962): Typecho\Plugin->__call('Widget_Abstract...', Array)
#3 /app/var/Typecho/Widget.php(395): Widget\Base\Contents->___content()
#4 /app/usr/themes/Typecho-Butterfly/functions.php(1125): Typecho\Widget->__get('content')
#5 /app/var/Widget/Archive.php(752): themeInit(Object(Widget\Archive))
#6 /app/var/Typecho/Widget.php(155): Widget\Archive->execute()
#7 /app/var/Typecho/Widget.php(187): Typecho\Widget::widget('Widget\\Archive', 'type=single&che...', NULL, true)
#8 /app/admin/preview.php(6): Typecho\Widget::alloc('type=single&che...')
#9 {main}
gogobody commented 2 years ago

update

zurica2013 commented 2 years ago

update

已经是最新的插件了啊1.0.5,而且原版TpCache并没有这个报错

gogobody commented 2 years ago

新版 https://gitee.com/gogobody/jkSiteHelper

zurica2013 commented 2 years ago

新版 https://gitee.com/gogobody/jkSiteHelper

谢谢!很好用。预览问题也解决了。不过页面设置无法在后台生效的问题又回来了,上面可能是我弄错了,改组属并不会真正让后台配置文件修改,所以还是只能手动修改,不过缓存可以正常工作了