温馨提示×

ubuntu apache2怎么配置PHP环境

小樊
36
2026-08-16 20:52:24
栏目: 编程语言

在 Ubuntu 上配置 Apache2 + PHP 环境,一般按下面步骤来即可(以 Ubuntu 20.04 / 22.04 为例,PHP 以 PHP 8.1 为例,可按需更换版本)。


一、更新系统

sudo apt update
sudo apt upgrade -y

二、安装 Apache2

sudo apt install apache2 -y

启动并设置开机自启

sudo systemctl start apache2
sudo systemctl enable apache2

验证

浏览器访问:

http://服务器IP

看到 Apache2 Ubuntu Default Page 即成功。


三、安装 PHP

1️⃣ 安装 PHP 及常用扩展

sudo apt install php php-cli php-fpm php-json php-common php-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath -y

如果你用的是 PHP 8.2 / 8.3,把 php 换成 php8.2 / php8.3 即可。


四、配置 Apache 支持 PHP

Ubuntu 默认 Apache 会自动加载 PHP 模块(使用 mpm_prefork + mod_php)。

检查 PHP 模块是否加载

ls /etc/apache2/mods-enabled/ | grep php

如果没看到,可手动启用:

sudo apt install libapache2-mod-php
sudo a2enmod php8.1
sudo systemctl restart apache2

五、测试 PHP 是否生效

创建测试文件

sudo nano /var/www/html/info.php

内容:

<?php
phpinfo();

访问测试

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

✅ 能看到 PHP 信息页面说明配置成功。

⚠️ 测试完成后建议删除

sudo rm /var/www/html/info.php

六、修改网站目录(可选)

默认目录:

/var/www/html

如需新建站点:

sudo mkdir -p /var/www/example.com
sudo chown -R www-data:www-data /var/www/example.com

七、配置虚拟主机(推荐)

sudo nano /etc/apache2/sites-available/example.com.conf

示例配置:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/example.com

    <Directory /var/www/example.com>
        AllowOverride All
        Require all granted
    </Directory>

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

启用:

sudo a2ensite example.com.conf
sudo systemctl reload apache2

八、常见问题排查

1️⃣ PHP 文件直接下载而不是执行

sudo a2enmod php8.1
sudo systemctl restart apache2

2️⃣ 修改了配置没生效

sudo systemctl restart apache2

3️⃣ 查看 PHP 版本

php -v

九、PHP + MySQL 示例

<?php
$conn = new mysqli("localhost", "user", "password", "dbname");
if ($conn->connect_error) {
    die("连接失败: " . $conn->connect_error);
}
echo "数据库连接成功";

如果你需要:

  • 指定 PHP 版本(7.4 / 8.2 / 8.3)
  • Apache + PHP-FPM(高性能)
  • HTTPS(Let’s Encrypt)
  • Laravel / ThinkPHP 环境

可以直接告诉我你的 Ubuntu 版本 + PHP 版本 + 使用场景,我可以给你更精确的配置方案。

0