温馨提示×

如何配置Ubuntu的PHP

小樊
34
2026-08-12 12:48:17
栏目: 编程语言

在 Ubuntu 上配置 PHP,通常是为了配合 ApacheNginx 使用。下面我按最常见场景给你一个完整、实用的配置流程(以 Ubuntu 20.04 / 22.04 为例,PHP 8.x)。


一、安装 PHP(基础)

1️⃣ 更新软件源

sudo apt update

2️⃣ 安装 PHP(CLI + 常用扩展)

sudo apt install php php-cli php-fpm php-common php-mysql php-curl php-mbstring php-xml php-zip

查看版本:

php -v

二、配置 PHP(核心文件)

1️⃣ PHP 配置文件位置

/etc/php/8.x/

常见目录结构:

/etc/php/8.x/
├── cli/php.ini        # 命令行 PHP
├── fpm/php.ini        # PHP-FPM(Nginx 用)
├── apache2/php.ini    # Apache 用

2️⃣ 常用 PHP 配置修改

编辑配置文件(以 FPM 为例):

sudo nano /etc/php/8.x/fpm/php.ini

推荐修改项:

upload_max_filesize = 64M
post_max_size = 64M
memory_limit = 256M
max_execution_time = 300
date.timezone = Asia/Shanghai

保存后重启:

sudo systemctl restart php8.x-fpm

三、Apache + PHP 配置

1️⃣ 安装 Apache 和 PHP 模块

sudo apt install apache2 libapache2-mod-php

2️⃣ 测试 PHP

echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

浏览器访问:

http://服务器IP/info.php

✅ 看到 PHP 信息页面说明成功


四、Nginx + PHP 配置(推荐)

1️⃣ 安装 Nginx 和 PHP-FPM

sudo apt install nginx php-fpm

2️⃣ 确认 PHP-FPM 监听方式

sudo nano /etc/php/8.x/fpm/pool.d/www.conf

确认:

listen = /run/php/php8.x-fpm.sock

3️⃣ 配置 Nginx 支持 PHP

编辑站点配置:

sudo nano /etc/nginx/sites-available/default

修改 server 段:

server {
    listen 80;
    server_name your_domain_or_ip;
    root /var/www/html;
    index index.php index.html;

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.x-fpm.sock;
    }
}

4️⃣ 重启服务

sudo systemctl restart nginx
sudo systemctl restart php8.x-fpm

五、PHP-FPM 常用管理命令

sudo systemctl status php8.x-fpm
sudo systemctl stop php8.x-fpm
sudo systemctl start php8.x-fpm
sudo systemctl restart php8.x-fpm

六、安装指定 PHP 版本(可选)

例如 PHP 7.4:

sudo apt install software-properties-common
sudo add-apt-repository ppa:ondrej/php
sudo apt update
sudo apt install php7.4 php7.4-fpm

七、常见问题排查

❌ 页面直接下载 PHP 文件

✅ 原因:Nginx / Apache 未正确解析 PHP
✅ 检查 PHP-FPM 是否运行、Nginx 配置是否正确

❌ 502 Bad Gateway

✅ PHP-FPM sock 文件不存在或权限错误


八、总结(快速版)

sudo apt update
sudo apt install php php-fpm nginx
sudo nano /etc/php/8.x/fpm/php.ini
sudo systemctl restart php8.x-fpm
sudo systemctl restart nginx

如果你愿意,可以告诉我:

  • ✅ 用的是 Apache 还是 Nginx
  • ✅ Ubuntu 版本
  • ✅ 是 本地开发 还是 服务器部署

我可以给你一份完全定制化的配置方案

0