在 Ubuntu 下搭建 PHP 环境,常见有三种方式:最常用的是 Apache/Nginx + PHP + MySQL(LAMP/LNMP),其次是 Docker,或者直接用 集成环境。下面按从简单到专业给你讲清楚。
适合新手、本地开发、简单项目
sudo apt update
sudo apt upgrade -y
sudo apt install apache2 -y
访问:
http://localhost
sudo apt install php libapache2-mod-php -y
查看版本:
php -v
sudo apt install php-mysql php-curl php-mbstring php-xml php-zip php-gd -y
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问:
http://localhost/info.php
✅ 能看到 PHP 信息页就成功了
sudo apt install nginx -y
访问:
http://localhost
sudo apt install php-fpm -y
查看版本:
php-fpm8.1 -v
编辑默认站点:
sudo nano /etc/nginx/sites-available/default
找到:
index index.html index.htm;
改为:
index index.php index.html index.htm;
在 server {} 里添加:
location ~ \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/run/php/php-fpm.sock;
}
sudo systemctl restart nginx
sudo systemctl restart php8.1-fpm
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
访问:
http://localhost/info.php
sudo apt install mysql-server -y
sudo mysql_secure_installation
PHP 连接 MySQL:
sudo apt install php-mysql -y
sudo apt install tasksel -y
sudo tasksel install lamp-server
docker run -d -p 80:80 --name php-env \
-v $(pwd):/var/www/html \
php:8.2-apache
适合:
libapache2-mod-php 已安装sudo systemctl restart apache2
# 或
sudo systemctl restart php8.1-fpm
php.ini 位置:
php --ini
| 场景 | 推荐 |
|---|---|
| 新手 | Apache + PHP |
| 生产 | Nginx + PHP-FPM |
| 多版本 | Docker |
| 快速 | XAMPP / tasksel |
如果你愿意,可以告诉我:
我可以给你完全定制的一套命令。