下面给你一份Linux 下 LAMP(Linux + Apache + MySQL/MariaDB + PHP)的通用安装与配置教程,适用于 Ubuntu / Debian / CentOS / Rocky / AlmaLinux。我会按最常见场景讲,并给出不同系统的命令差异。
sudo apt update
sudo apt upgrade -y
sudo apt install apache2 -y
启动并设置开机自启:
sudo systemctl start apache2
sudo systemctl enable apache2
测试: 浏览器访问:
http://服务器IP
sudo apt install mariadb-server -y
安全初始化:
sudo mysql_secure_installation
设置 root 密码、删除测试库等(建议全部选 Y)
sudo apt install php libapache2-mod-php php-mysql php-cli php-curl php-xml php-mbstring -y
重启 Apache:
sudo systemctl restart apache2
创建测试文件:
sudo nano /var/www/html/info.php
内容:
<?php
phpinfo();
浏览器访问:
http://服务器IP/info.php
✅ 看到 PHP 信息页面说明成功
sudo dnf update -y
sudo dnf install httpd -y
启动并设置开机启动:
sudo systemctl start httpd
sudo systemctl enable httpd
防火墙放行:
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
sudo dnf install mariadb-server -y
sudo systemctl start mariadb
sudo systemctl enable mariadb
sudo mysql_secure_installation
sudo dnf install php php-mysqlnd php-xml php-mbstring php-json -y
重启 Apache:
sudo systemctl restart httpd
/var/www/html/var/www/html/etc/apache2/apache2.conf/etc/httpd/conf/httpd.conf<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/html
<Directory /var/www/html>
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
systemctl status apache2 # Ubuntu
systemctl status httpd # CentOS
libapache2-mod-php 已安装sudo systemctl status mariadb
✅ 开启 HTTPS(Let’s Encrypt)
✅ 使用 php-fpm + Apache/Nginx
✅ 数据库远程访问安全配置
✅ 使用 防火墙 + SELinux
如果你愿意,可以告诉我:
我可以给你更精确的一套配置方案。