Debian LAMP 服务器配置指南
一 环境准备与安装
sudo apt update && sudo apt upgrade -ysudo apt install apache2 -ysudo systemctl start apache2 && sudo systemctl enable apache2sudo systemctl status apache2(应显示 active (running))sudo apt install mariadb-server -ysudo mysql_secure_installationsudo apt install php libapache2-mod-php php-mysql php-cli php-common php-curl php-gd php-json php-mbstring php-xml php-zip php-readline -ysudo systemctl restart apache2sudo ufw allow 'Apache Full' && sudo ufw enable二 验证与基础配置
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.phphttp://服务器IP/info.php,应看到 PHP 信息页sudo apt install phpmyadmin -y(安装时选择 Apache)http://服务器IP/phpmyadminsudo chown -R www-data:www-data /var/www/html 并控制权限位数)三 虚拟主机与 HTTPS
sudo nano /etc/apache2/sites-available/example.com.conf<VirtualHost *:80>
ServerName example.com
DocumentRoot /var/www/example.com
<Directory /var/www/example.com>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
ErrorLog ${APACHE_LOG_DIR}/example_error.log
CustomLog ${APACHE_LOG_DIR}/example_access.log combined
</VirtualHost>
sudo a2ensite example.com.confsudo a2dissite 000-default.confsudo systemctl reload apache2sudo apt install certbot python3-certbot-apachesudo certbot --apache -d example.com -d www.example.com四 常用优化与安全加固
upload_max_filesize = 64Mpost_max_size = 64Mmax_execution_time = 300memory_limit = 256Msudo systemctl restart apache2sudo a2dismod status(如启用)sudo a2enmod deflate && sudo systemctl reload apache2mysql_secure_installation(设置 root 强密码、移除匿名用户、禁止远程 root 登录、删除测试库)sudo mysql -u root -p
CREATE DATABASE app_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
CREATE USER 'app_user'@'localhost' IDENTIFIED BY '强密码';
GRANT ALL PRIVILEGES ON app_db.* TO 'app_user'@'localhost';
FLUSH PRIVILEGES;
EXIT;
sudo apt update && sudo apt upgrade -y五 故障排查与离线安装
sudo ss -tulpen | grep ':80\|:443',查看日志 sudo journalctl -xeu apache2apache2ctl -M | grep php,检查站点配置 AllowOverride All 与目录权限extension=mysqli/pdo_mysql 启用状态与数据库凭据sudo apt install -y libaio1 libmecab2 libnuma1 psmiscsudo dpkg-preconfigure mysql-community-server_*.debsudo dpkg -i mysql-{common,community-client-plugins,community-client-core,community-client,client,community-server-core,community-server,server}_*.debsudo systemctl enable --now mysql,mysql -V 应显示版本号