PHP配置Ubuntu时需要注意什么
导读:Ubuntu 上配置 PHP 的关键注意事项 一 基础准备与版本选择 保持系统软件为最新:执行 sudo apt update && sudo apt upgrade,先修复漏洞再部署。 明确项目所需的 PHP 版本,不同...
Ubuntu 上配置 PHP 的关键注意事项
一 基础准备与版本选择
- 保持系统软件为最新:执行 sudo apt update & & sudo apt upgrade,先修复漏洞再部署。
- 明确项目所需的 PHP 版本,不同版本对扩展与框架支持不同;安装时建议同时安装常用扩展,如 php-cli php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip php-bcmath。
- 选择运行模式:与 Apache 集成可用 libapache2-mod-php;与 Nginx 搭配推荐使用 PHP-FPM(性能更好、资源占用更可控)。
- 修改配置后务必重启相应服务(如 systemctl restart apache2 或 systemctl restart php-fpm)使生效。
二 安全加固要点
- 关闭信息泄露:设置 expose_php = Off,避免响应头暴露 PHP 版本。
- 生产环境错误策略:设置 display_errors = Off、log_errors = On,并指定 error_log,防止敏感信息展示。
- 限制危险能力:禁用不必要的函数,如 exec、system、passthru、shell_exec、proc_open、popen、curl_exec、curl_multi_exec、parse_ini_file、show_source;必要时用 open_basedir 限制脚本可访问目录(如 /var/www/html:/tmp)。
- 远程文件包含风险:如无明确需求,关闭 allow_url_fopen 与 allow_url_include。
- 资源与上传控制:合理设置 max_execution_time、memory_limit、upload_max_filesize、post_max_size,兼顾安全与业务需求。
- 边界与访问控制:启用 UFW 防火墙(如允许 Apache Full 与 OpenSSH),并考虑 fail2ban 等防护;为数据库设置强口令与最小权限。
三 性能优化与进程管理
- 启用 OPcache:在 php.ini 中开启并调优,如 opcache.enable=1、opcache.memory_consumption=128、opcache.interned_strings_buffer=8、opcache.max_accelerated_files=4000、opcache.revalidate_freq=60,显著提升脚本执行性能。
- 优化 PHP-FPM(/etc/php/{ version} /fpm/pool.d/www.conf):根据内存与并发选择 pm = dynamic/static/ondemand,并合理设置 pm.max_children、pm.start_servers、pm.min_spare_servers、pm.max_spare_servers、pm.max_requests,避免进程风暴与 OOM。
- 静态资源与传输:启用 HTTP/2、接入 CDN 加速静态资源,降低后端压力。
- 数据库与应用层:优化 SQL 查询与索引、使用连接池或持久连接,减少往返与锁等待。
四 文件权限与 Web 服务器集成
- 目录与所有权:将站点目录(如 /var/www/html)属主设为 www-data:www-data,权限 755,确保 Web 服务可读可执行但不可被随意写入。
- Apache 集成:安装 libapache2-mod-php 并确保 .php 被正确处理;按需启用 mod_rewrite 等模块。
- Nginx 集成:配置 fastcgi_pass 指向 PHP-FPM(如 unix:/run/php/php{ version} -fpm.sock),并设置 SCRIPT_FILENAME $document_root$fastcgi_script_name。
- 多站点:使用 /etc/apache2/sites-available/ 与 a2ensite 管理虚拟主机,变更后重启服务。
五 验证与运维监控
- 安装验证:创建 /var/www/html/info.php(内容 )确认版本、扩展与配置是否生效;上线前删除该文件。
- 配置定位:使用 php --ini 确认加载的 php.ini(区分 CLI 与 FPM)。
- 变更生效:每次修改 php.ini 或 FPM 池配置后,重启 Apache 或 PHP-FPM。
- 日志与告警:开启并定期审计 PHP 错误日志 与 Web 访问日志,结合 fail2ban 做暴力破解防护。
- 持续维护:定期 更新系统与依赖、备份配置与数据、监控 CPU/内存/连接数,必要时用 Blackfire/Xdebug/Zabbix 做性能分析与容量规划。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: PHP配置Ubuntu时需要注意什么
本文地址: https://pptw.com/jishu/751274.html
