温馨提示×

Debian LAMP怎么配置最优

小樊
41
2026-07-30 07:49:31
栏目: 智能运维

在 Debian 上配置 LAMP(Linux + Apache + MySQL/MariaDB + PHP) 时,“最优”通常指 性能、稳定性、安全性和可维护性 的平衡。下面给你一套 生产环境推荐配置方案(Debian 12/11 通用),并解释每一步为什么这样配。


一、系统准备(基础优化)

sudo apt update && sudo apt upgrade -y
sudo apt install -y curl wget vim unzip

1️⃣ 时区 & 语言

sudo dpkg-reconfigure tzdata
sudo apt install -y locales
sudo locale-gen en_US.UTF-8

2️⃣ 系统资源限制

sudo vim /etc/security/limits.conf

建议:

* soft nofile 65535
* hard nofile 65535

二、Apache 最优配置

1️⃣ 安装

sudo apt install -y apache2 apache2-utils

2️⃣ 关闭不必要模块(性能)

sudo a2dismod autoindex status cgid
sudo a2enmod rewrite ssl headers expires

3️⃣ MPM 选择(非常重要)

推荐:event MPM(高并发)

sudo a2dismod mpm_prefork
sudo a2enmod mpm_event

4️⃣ Apache 主配置优化

编辑:

sudo vim /etc/apache2/mods-available/mpm_event.conf

推荐配置(2核4G 示例):

<IfModule mpm_event_module>
    StartServers             2
    MinSpareThreads          25
    MaxSpareThreads          75
    ThreadLimit              64
    ThreadsPerChild          25
    MaxRequestWorkers        150
    MaxConnectionsPerChild   1000
</IfModule>

5️⃣ 关闭 Server 信息泄露

sudo vim /etc/apache2/conf-available/security.conf
ServerTokens Prod
ServerSignature Off
sudo a2enconf security

三、数据库(MariaDB 推荐)

1️⃣ 安装

sudo apt install -y mariadb-server mariadb-client

2️⃣ 安全初始化

sudo mysql_secure_installation

✅ 建议:

  • 禁止 root 远程登录
  • 删除 test 库
  • 启用密码强度校验

3️⃣ 性能优化配置

sudo vim /etc/mysql/mariadb.conf.d/50-server.cnf

示例(4G 内存):

[mysqld]
innodb_buffer_pool_size = 1G
innodb_log_file_size = 256M
innodb_flush_log_at_trx_commit = 2
query_cache_size = 0
query_cache_type = 0
max_connections = 150

重启:

sudo systemctl restart mariadb

四、PHP 最优配置(推荐 PHP 8.2 / 8.3)

1️⃣ 安装 PHP + Apache 模块

sudo apt install -y php php-cli php-fpm php-mysql php-xml php-mbstring php-curl php-zip php-gd php-opcache

推荐 Apache + PHP-FPM(比 mod_php 性能好)

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.2-fpm
sudo systemctl restart apache2

2️⃣ PHP 性能优化

sudo vim /etc/php/8.2/fpm/php.ini

推荐:

memory_limit = 256M
upload_max_filesize = 64M
post_max_size = 128M
max_execution_time = 120
opcache.enable=1
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000

重启:

sudo systemctl restart php8.2-fpm

五、HTTPS(必须)

1️⃣ 安装 Certbot

sudo apt install -y certbot python3-certbot-apache

2️⃣ 申请证书

sudo certbot --apache

✅ 自动续期:

sudo systemctl enable certbot.timer

六、安全加固(非常重要)

1️⃣ 防火墙

sudo apt install -y ufw
sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw enable

2️⃣ Fail2ban

sudo apt install -y fail2ban

3️⃣ 禁止 Apache 目录遍历

<Directory /var/www/html>
    Options -Indexes
</Directory>

七、目录结构建议(规范)

/var/www/
 ├── example.com/
 │    ├── public_html/
 │    └── logs/

虚拟主机示例:

<VirtualHost *:80>
    ServerName example.com
    DocumentRoot /var/www/example.com/public_html
    ErrorLog /var/www/example.com/logs/error.log
    CustomLog /var/www/example.com/logs/access.log combined
</VirtualHost>

八、性能对比总结

方案 性能 稳定性 推荐
Apache + mod_php
Apache + PHP-FPM
Nginx + PHP-FPM 最高 ✅(非 LAMP)
Apache MPM prefork

九、推荐最终组合 ✅

Debian 12
Apache 2.4 + mpm_event
PHP 8.2/8.3 + PHP-FPM
MariaDB 10.11
HTTPS (Let's Encrypt)
Fail2ban + UFW
OPcache 开启

如果你愿意,我可以:

  • ✅ 按 你的服务器配置(CPU / 内存) 给你定制参数
  • ✅ 给你 压测方案(ab / wrk)
  • ✅ 帮你 迁移现有 LAMP
  • ✅ 给你 WordPress / Laravel / 自研项目专用配置

直接告诉我你的 服务器规格 + 使用场景 即可。

0