下面给你一份在 Ubuntu 上配置 PHP 的完整常见方案,从安装到常见配置,基本覆盖 90% 的使用场景(Web 开发 / Nginx / Apache)。
sudo apt update
sudo apt upgrade -y
sudo apt install php8.2 php8.2-cli php8.2-fpm -y
如果你需要其他版本(如 7.4 / 8.1):
sudo apt install php7.4 php7.4-fpm
查看版本:
php -v
sudo systemctl status php8.2-fpm
启动 / 重启 / 开机自启:
sudo systemctl start php8.2-fpm
sudo systemctl enable php8.2-fpm
sudo apt install nginx -y
编辑站点配置:
sudo nano /etc/nginx/sites-available/default
示例配置:
server {
listen 80;
server_name localhost;
root /var/www/html;
index index.php index.html;
location / {
try_files $uri $uri/ =404;
}
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php8.2-fpm.sock;
}
}
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问:
http://服务器IP/info.php
✅ 看到 PHP 信息页面说明成功
sudo apt install apache2 -y
sudo apt install libapache2-mod-php8.2
sudo a2enmod php8.2
sudo systemctl restart apache2
测试:
sudo nano /var/www/html/info.php
/etc/php/8.2/
常见目录:
/etc/php/8.2/cli/php.ini # 命令行 PHP
/etc/php/8.2/fpm/php.ini # PHP-FPM(Web)
编辑:
sudo nano /etc/php/8.2/fpm/php.ini
upload_max_filesize = 50M
post_max_size = 50M
memory_limit = 256M
max_execution_time = 300
date.timezone = Asia/Shanghai
修改后重启 PHP-FPM:
sudo systemctl restart php8.2-fpm
sudo apt install php8.2-mysql php8.2-curl php8.2-mbstring php8.2-xml php8.2-zip php8.2-gd -y
查看已安装扩展:
php -m
✅ 检查:
fastcgi_pass 路径是否正确.php 文件是否存在sudo systemctl status php8.2-fpm
检查 sock 文件:
ls /run/php/
php -v
sudo systemctl status php8.2-fpm
sudo systemctl restart nginx
sudo systemctl restart apache2
如果你告诉我:
我可以给你一份更精确的一键配置方案。