Ubuntu PHP环境配置指南

在安装任何软件前,需确保系统包列表是最新的,以避免依赖冲突:
sudo apt update通过APT包管理器安装PHP核心、命令行工具(CLI)、PHP-FPM(可选,用于进程管理)及常用扩展(如MySQL数据库支持、GD图像处理、MB字符串处理等):
sudo apt install php php-cli php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-zip安装完成后,可通过php -v命令验证PHP是否安装成功,输出结果会显示PHP版本信息。
若使用PHP-FPM提升PHP处理效率,需完成以下配置:
sudo systemctl start php-fpm# 根据PHP版本调整,如php7.4-fpm、php8.3-fpmsudo systemctl enable php-fpm/etc/php/8.3/fpm/pool.d/www.conf),找到listen行并修改为:listen = /run/php/php8.3-fpm.sock保存后重启PHP-FPM:sudo systemctl restart php-fpmNginx需通过FastCGI协议与PHP-FPM通信,修改站点配置文件(如/etc/nginx/sites-available/default):
server {listen 80;server_name your_domain_or_ip;root /var/www/html;index index.php index.html index.htm;location / {try_files $uri $uri/ =404;}location ~ .php$ {include snippets/fastcgi-php.conf;fastcgi_pass unix:/run/php/php8.3-fpm.sock;# 与PHP-FPM的listen路径一致fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;include fastcgi_params;}location ~ /.ht {deny all;}}修改完成后重启Nginx:
sudo systemctl restart nginxApache需启用PHP模块并配置PHP处理:
sudo apt install libapache2-mod-php# 自动安装对应PHP版本的模块sudo a2enmod php8.3# 根据PHP版本调整,如php7.4/etc/apache2/sites-available/000-default.conf),添加以下内容:<FilesMatch .php$>SetHandler application/x-httpd-php</FilesMatch>重启Apache:sudo systemctl restart apache2在Web服务器根目录(如/var/www/html)创建info.php文件,内容如下:
<?php phpinfo(); ?>通过浏览器访问http://your_domain_or_ip/info.php,若看到PHP详细信息页面,则说明配置成功。注意:生产环境中需删除此文件,避免泄露敏感信息。
PHP主配置文件位于/etc/php/{version}/cli/php.ini(命令行模式)和/etc/php/{version}/fpm/php.ini(PHP-FPM模式)。常见优化参数:
memory_limit = 256M# 脚本最大内存使用量upload_max_filesize = 64M# 上传文件最大大小post_max_size = 70M# POST请求最大数据量max_execution_time = 30# 脚本最大执行时间(秒)error_reporting = E_ALL & ~E_NOTICE# 错误报告级别display_errors = Off# 生产环境关闭错误显示log_errors = On# 开启错误日志记录编辑/etc/php/{version}/fpm/pool.d/www.conf,调整进程管理参数:
pm = dynamic# 动态进程管理模式pm.max_children = 50# 最大子进程数(根据服务器内存调整)pm.start_servers = 10# 启动时的子进程数pm.min_spare_servers = 5# 最小空闲子进程数pm.max_spare_servers = 20# 最大空闲子进程数pm.max_requests = 500# 每个子进程处理的最大请求数(避免内存泄漏)修改后重启PHP-FPM:
sudo systemctl restart php-fpmOPcache可缓存编译后的PHP脚本,显著提升性能。安装并启用:
sudo apt install php-opcache# 安装OPcache扩展编辑php.ini,添加以下配置:
[opcache]zend_extension=opcache.so# 启用OPcache扩展opcache.enable=1# 开启OPcacheopcache.memory_consumption=128# 缓存内存大小(MB)opcache.interned_strings_buffer=8# 内部字符串缓冲区大小opcache.max_accelerated_files=4000# 最大加速文件数opcache.revalidate_freq=60# 文件检查频率(秒)重启PHP-FPM或Web服务器使配置生效。