首页主机资讯Debian PHP测试如何进行

Debian PHP测试如何进行

时间2025-12-11 14:30:03发布访客分类主机资讯浏览1248
导读:Debian PHP测试实操指南 一 环境验证与连通性测试 更新并安装基础组件(以实际版本为准,如8.2): sudo apt update sudo apt install php php-cli php-fpm php-json p...

Debian PHP测试实操指南

一 环境验证与连通性测试

  • 更新并安装基础组件(以实际版本为准,如8.2):
    • sudo apt update
    • sudo apt install php php-cli php-fpm php-json php-mysql php-curl php-gd php-mbstring php-xml
  • 验证CLI与版本:
    • php -v
  • Web连通性测试(FPM或模块方式均可):
    • 创建测试文件:echo “” | sudo tee /var/www/html/info.php
    • 访问:http://服务器IP/info.php(看到PHP信息页即表示环境可用)
    • 安全提示:测试完成后删除文件 sudo rm /var/www/html/info.php
  • 配置文件路径速查(按运行模式区分):
    • CLI:/etc/php/{ 版本} /cli/php.ini
    • FPM:/etc/php/{ 版本} /fpm/php.ini
    • 查看加载的配置:php --ini(CLI),或针对FPM进程查看对应ini

二 单元测试与代码覆盖率

  • 安装Composer与PHPUnit(项目本地安装更可控):
    • curl -sS https://getcomposer.org/installer | php – --install-dir=/usr/local/bin --filename=composer
    • 在项目根目录:composer require --dev phpunit/phpunit
  • 示例被测类 tests/Calculator.php:
    • class Calculator { public function add($a,$b){ return $a+$b; } public function divide($a,$b){ if($b===0) throw new InvalidArgumentException(“Division by zero.”); return $a/$b; } }
  • 示例测试类 tests/CalculatorTest.php:
    • use PHPUnit\Framework\TestCase; require DIR.‘/…/Calculator.php’;
    • class CalculatorTest extends TestCase { private $c; protected function setUp(): void { $this-> c=new Calculator(); } public function testAdd(){ $this-> assertEquals(5,$this-> c-> add(2,3)); } public function testDivide(){ $this-> assertEquals(2,$this-> c-> divide(6,3)); $this-> expectException(InvalidArgumentException::class); $this-> c-> divide(1,0); } }
  • 运行测试与覆盖率:
    • ./vendor/bin/phpunit tests/CalculatorTest.php
    • 生成覆盖率报告(需安装php-xdebug或phpdbg):./vendor/bin/phpunit --coverage-html report

三 性能分析与调优

  • 安装与启用OPcache(显著提升脚本执行速度,开发环境可按需关闭):
    • 编辑php.ini(CLI与FPM分别设置):
      • zend_extension=opcache.so
      • opcache.enable=1
      • opcache.memory_consumption=64
      • opcache.max_accelerated_files=4000
    • 重启服务:sudo systemctl restart php**{ 版本} **-fpm 或 sudo systemctl restart apache2
  • 调试与分析工具:
    • Xdebug(调试/性能分析,开发环境常用):sudo apt install php**{ 版本} **-xdebug
      • 配置示例(php.ini):
        • zend_extension=“xdebug.so”
        • xdebug.mode=debug
        • xdebug.client_host=127.0.0.1
        • xdebug.client_port=9003
      • 重启服务后配合IDE断点调试
    • Blackfire(云端性能分析,适合定位瓶颈)
  • 负载与压力测试(AB或wrk):
    • sudo apt install apache2-utils
    • ab -n 100 -c 10 http://服务器IP/info.php
    • wrk -t12 -c400 -d30s http://服务器IP/info.php
  • FPM关键参数调优(/etc/php/{ 版本} /fpm/pool.d/www.conf):
    • pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers 按内存与并发调优

四 常见问题与排查要点

  • 版本与扩展不一致:
    • 确认CLI与FPM使用同一版本:php -v 与针对FPM进程执行 php -v(如在FPM容器内或临时切换至对应SAPI)
    • 扩展按需安装(如数据库、缓存、图像处理等),变更后重启FPM/Apache
  • 配置文件未生效:
    • 使用 php --ini 确认“Loaded Configuration File”
    • 区分CLI与FPM的ini路径,必要时在对应目录修改并重启服务
  • Web访问空白或502:
    • 检查Web服务器(Apache/Nginx)与PHP-FPM是否运行:systemctl status apache2 / nginx / php**{ 版本} **-fpm
    • Nginx常见:确认 fastcgi_pass 指向正确的 .sock127.0.0.1:9000
    • 查看错误日志:/var/log/apache2/error.log 或 /var/log/nginx/error.log
  • Xdebug连不上IDE:
    • 核对 xdebug.client_host/port 与IDE监听配置一致,确保监听已启动且防火墙放行
  • 安全提示:
    • 生产环境禁用或限制 info.php 等敏感文件访问,避免泄露配置与路径信息

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: Debian PHP测试如何进行
本文地址: https://pptw.com/jishu/769387.html
Debian如何升级Java编译版本 Debian下PHP配置怎样优化

游客 回复需填写必要信息