1Panel版本:v1.5.3
浏览器:Edge 版本 116.0.1938.54 (正式版本) (64 位)
运行方式:手动安装WordPress,Redis
使用的是 Redis Object Cache 插件,配置好密码和端口后启用插件提示连接被拒绝。已确认密码是正确的。
是创建的 PHP 运行环境网站吗?
使用容器 service name 访问的时候,需要确保两个容器在同一个 network 中
如果是手动创建容器时,需要注意这一点。
wp这个插件有点迷的,升级后总会遇到奇奇怪怪的问题,没事不要升级。
除了wp 的config 定义一下以外,
编辑类似文件/opt/1panel/apps/wordpress/wordpress/data/wp-content/object-cache.php
大约在行624行左右参考以下修改
protected function build_parameters() {
$parameters = [
'scheme' => 'tcp',
'host' => 'redis',
'port' => 6379,
'password' => 'password',
4 个赞
折腾好久,终于弄明白了。WP_REDIS_HOST原来不能用redis,而是要用真正生成的容器名连接,比如1Panel-redis-uhMz,但面板里给的是redis:6379
非常误导人!折腾很长时间。
用docker的IP连接也可以,但是重启ip会变,所以,最好还是用容器名。
你的1Panel服务器是存在多个服务名称为redis的容器应用吗?
如果在相同的容器网络下,应该是服务名称和容器名称都可以。
后面版本也会针对这里作出优化。
不是,就一个。从应用商店安装后,容器名生成的并不是redis,而是类似于1Panel-redis-uhMz。可能第一次生成是redis,但是如果销毁了再重新安装,就会变个名字。最好在数据库连接那里,说明白是真正生成的redis容器名称。
网络都是在相同网络下,按说服务名应该可以,但不知道为什么就是不行。用ip和容器名访问都没有问题,就是服务名不行