年度归档: 2019 年
-
在 Docker 部署过程中将目录名从 sobey 修改为 mcloud 时,Jenkins 构建镜像报错 composer install 返回非零代码。排查 Dockerfile 后发现是执行批量替换操作导致,将目录中的 mcloud 还原为 sobey,仅替换指定的几处后,构建镜像最终成功,问题得以解决。
-
本文针对 PHP 7.2 环境下请求参数数量达到 1136 个时触发 mb_parse_str 输入变量超限报错的问题进行了分析。通过编辑 php.ini 配置文件,将限制输入变量数量的 max_input_vars 值调整为 10000,解决了变量被截断导致的警告。随后针对调整后出现的脚本执行超时问题,将最大执行时间 max_execution_times 修改为 300。重启 PHP 进程后,再次请求成功响应。
-
本文通过调用 memory_get_usage() 函数,分析了 PHP 脚本在不同状态下的内存占用情况。实验显示,将 real_usage 参数设置为 TRUE 可以获取系统分配的总内存尺寸,设置为 FALSE 则仅查看实际使用量。测试结果表明,使用 unset() 释放变量不仅有效降低了脚本实际使用的内存量,也能减少系统分配的总内存尺寸。此外,在 Yii 2.0 框架中验证发现,调试面板显示的内存数值与内存峰值函数获取的数据一致。
-
本文针对 Nginx 1.10 版本重新加载时出现的 could not build optimal server_names_hash 报错进行分析。问题根源在于新增的虚拟主机配置文件中定义了大量服务器名称。解决方法是查阅官方文档后,编辑 Nginx 配置文件,在 http 段落中添加 server_names_hash_max_size 1024 配置项,成功解决了该警告并使服务正常加载。
-
针对 Yii 2.0 报错提示调用未知方法的问题,通过检查 api\modules\v1\models\PlanTask.php 及 common\logics\PlanTask.php 文件,发现方法 claimProcess 被定义为 private 私有权限。由于需要被子类访问,该方法被修改为 protected 受保护权限,从而解决了调用错误。
-
本文介绍了在 Yii 2.0 中实现 RESTful APIs 在移动应用端复用与微调的方法。通过编辑 \api\rests\plan\ViewAction.php 文件,利用 Yii::$app->controller->id 获取控制器 ID。根据路由为 /v1/plans/2 时值为 plan,而 /v1/mobile/plans/2 时值为 mobile/plan 的区别,进行条件判断。最终实现了在待审状态下,移动端接口正确返回编辑与更新权限为 0,桌面端保持为 1 的差异化控制效果。
-
本文记录了对基于 Yii 2.0 的 RESTful 风格 API 选题任务素材实现的代码审查过程。审查主要针对 URL 管理器配置冗余、控制器动作调整及权限检查、代码注释一致性、文件命名规范以及移动端目录下的文件清理等问题进行了详细修正。鉴于接口需向后兼容,虽然路由设计未充分利用默认动作,但最终决定沿用现有路由,并建议参考本次审查结果排查类似问题。
