分类: Laravel Configuration
-
针对 Laravel 6 写入日志时未生成当日文件的问题,排查发现系统时间为北京时间 2023-09-15,却生成了前一天的日志文件。经检查配置文件,`app.timezone` 设置为 `Etc/GMT+8`。根据 Etc 区域时区命名规则,该时区实际代表西八区,比北京时间早 16 小时,导致 Laravel 程序判定当前时间为 2023-09-14,从而写入旧的日志文件。
-
针对 Laravel 6 在生产环境全新部署后首次运行时环境变量取值为 null 导致配置项未更新的问题,文章分析了容器环境变量覆写与配置文件加载时序冲突的原因。虽然通过在代码中再次覆写 config() 函数可以实现变通,使环境变量值生效,但该方法存在代码冗余且难以维护,而基于新环境变量重新加载配置的方案则会导致部分自定义配置丢失,目前暂无完善的替代解法。
