当前位置:首页 > 云服务器 > 正文

php服务器 linux命令

Linux命令操作PHP服务器包括: php -v查版本、 php -r执行代码、 php -a进交互模式、 php filename.php运行脚本

是关于 PHP服务器在Linux环境下的常用命令 的详细说明,涵盖基础操作、进程管理、配置优化及故障排查等内容:


PHP服务启动与停止

命令 作用 示例
systemctl start php-fpm 启动PHP-FPM服务 sudo systemctl start php-fpm
systemctl stop php-fpm 停止PHP-FPM服务 sudo systemctl stop php-fpm
systemctl restart php-fpm 重启PHP-FPM服务 sudo systemctl restart php-fpm
systemctl status php-fpm 查看运行状态 sudo systemctl status php-fpm
killall -9 php 强制终止所有PHP进程 sudo killall -9 php

注意:不同发行版可能使用不同的服务名(如Ubuntu/Debian多为php-fpm,CentOS/RHEL可能是php-fpm74),可通过 ls /etc/init.d/ 或 systemctl list-units | grep php 确认实际名称。

php服务器 linux命令 第1张


查看PHP版本与模块信息

全局版本查询

php -v # 显示完整版本号(含编译日期) php --ini # 列出默认配置文件路径

示例输出:

PHP 8.2.15 (cli) (built: Mar 12 2024 ...) Configuration File (php.ini) Path => /etc/php/8.2/cli

已启用扩展列表

php -m # 展示所有加载的模块(包括Zend引擎内置功能)

典型结果片段:

[PHP Modules] Core, date, libxml, openssl, pdo_mysql...

环境变量检测工具

php --ri <扩展名> # 查看指定扩展的配置详情(如mysqli) php --rf <函数名> # 显示函数定义位置(调试用)


日志分析与错误追踪

文件路径 用途 关键关注点
/var/log/php/.log FPM错误日志 HTTP请求异常、语法错误堆栈
/var/log/nginx/error.log Web服务器转发的错误记录 FastCGI超时、权限拒绝等问题
journalctl -u php-fpm Systemd期刊中的实时事件流 启动失败原因、信号触发记录

实战技巧:当遇到“500 Internal Server Error”时,优先检查上述日志文件中的最后几行(使用 tail -n 50 /var/log/php/error.log)。

php服务器 linux命令 第2张


性能调优参数调整

通过修改配置文件实现资源管控:

php服务器 linux命令 第3张

; /etc/php/8.2/fpm/pool.d/www.conf pm = dynamic ; 进程管理模式(静态/动态) pm.max_children = 50 ; 最大子进程数 pm.start_servers = 5 ; 启动时创建的初始进程数 pm.min_spare_servers = 2 ; 保留空闲进程防止突发流量冲击 request_terminate_timeout = 60s ; 脚本执行超时限制

修改后需重新加载配置:

sudo systemctl reload php-fpm


安全加固建议

  1. 禁用危险函数(推荐添加至用户ini文件): ; disable_functions = shell_exec,exec,passthru,system
  2. 限制上传文件类型(Nginx示例): client_max_body_size 10M; # 限制POST体大小防分布攻破
  3. 设置开放端口防火墙规则: ufw allow from <可信IP段> to any port <监听端口>


常见问题与解答

Q1: PHP脚本执行超时如何处理?

A: 分三步排查:

1️⃣ 检查脚本逻辑是否存在死循环或海量数据库查询;

2️⃣ 调整 request_terminate_timeout 参数(见四);

3️⃣ 确保Web服务器代理超时同步增大(如Nginx的 fastcgi_read_timeout)。

Q2: 为何新安装的扩展不生效?

A: 常见原因包括:

️ 未重启PHP服务 → 执行 sudo systemctl restart php-fpm;

️ 配置文件未正确引用 → 用 php --ini 确认扫描路径;

️ SELinux拦截 → 临时关闭测试:setsebool -P httpd_enable_homedirs on。


进阶工具推荐

工具名称 功能描述 适用场景
opcache-gui OpCache缓存命中率可视化监控 高并发场景性能瓶颈定位
xhprof PHP代码级性能剖析器 复杂算法优化
blackfire.io Saas化的性能分析平台 云端协作调优

通过掌握这些命令和配置技巧,您可以高效管理Linux下的PHP服务,快速定位并

0