分类: Redis
-
本文记录了在 Windows 10 中使用 WSL 运行 .sh 脚本文件的尝试过程。通过管理员身份运行命令成功执行了测试文件,但在运行 themes.sh 时遇到了换行符语法错误及 PHP Redis 扩展报错。最终作者放弃在 WSL 中运行,转而在 Ubuntu 环境下执行,得出结论是脚本执行依赖的环境配置必须在 Ubuntu 中全部准备妥当,且所连接的 Redis 不再是 Windows 中的 Redis。
-
本文分析了主题编辑器页面保存后与实际页面不一致的问题,指出快速编辑时,后端保存接口从 Redis 读取数据的时机早于暂存接口写入数据的时机,导致数据未同步。最初尝试后端计数等待方案,但因存在数据丢失风险,最终参考 Shopify 实现,改为基于 hashValue 的比对机制。该方案在暂存和保存时分别计算与比对哈希值,仅在一致或用户确认忽略冲突时执行保存,从而有效解决了并发请求下的数据一致性问题。
-
程序在 Linux 环境下运行时报错 Failed to load type: OnlineStoreThemePreset,而本地 Windows 10 环境运行正常。排查后发现原因是 GraphQL Schema 缓存在 Redis 中未更新。通过执行 php artisan cache:clear 命令清除缓存后,接口请求恢复正常,问题得到解决。
-
在 Windows 10 环境下使用 Laravel 6 操作缓存时,因 Predis 可能被弃用而选择使用 PhpRedis PHP 扩展。配置 .env 驱动后运行报错提示未安装扩展,遂从 PECL 下载适配 PHP 7.4 TS x64 的 redis 5.3.7。将 php_redis.dll 复制到扩展目录并修改 php.ini 启用,重启服务后通过 phpinfo 确认成功。最终首页顺利获取到缓存值,且在 Redis 数据库中验证了存储结果符合预期,同时需注意解决类命名冲突问题。
-
本文解决两个 Laravel 6 项目因共用 Redis 数据库导致请求错误 302 跳转的问题。排查发现配置文件 /config/database.php 中存在多处 Redis HOST 配置,导致实际仅连接了 Redis 1。通过修改 .env 文件中的 Redis 连接配置并清空数据,实现了两个项目分别连接不同的 Redis 数据库。最终测试验证两个站点均响应 200,且数据分别写入对应的 db1 和 db5 中。
-
记录了一次在 Laravel 6 中排查域名跳转问题的过程。针对访问本地 HTTPS 地址时出现 302 跳转至其他域名的情况,通过排查源代码和数据库均未找到相关记录,最终发现 Redis 缓存中存在错误的域名配置键。清空 Redis 缓存后,访问本地地址不再发生 302 跳转,响应变为 500 状态码,问题定位解决。
-
本文记录了将 Laravel 8.x 项目部署至阿里云 ECS CentOS 7.7 的过程。基于 OneinStack 环境,通过虚拟主机脚本配置 Nginx 和 SSL,利用 FTP 上传代码并连接阿里云 RDS 数据库。文章详细解决了 PHP 禁用函数限制、Supervisor 进程管理配置及队列驱动调整等问题,最终通过 Supervisor 和 Crontab 实现了队列监听与任务调度,验证了部署成功。
-
执行 php artisan larabbs:calculate-active-user 命令时报错 Class ‘Redis’ not found,经排查该命令使用缓存并依赖 Redis 驱动。编辑 .dev 文件,添加配置项 REDIS_CLIENT=predis 后,再次执行命令成功解决报错问题。
