配置Debian LNMP(Linux, Nginx, MySQL/MariaDB, PHP)环境时,以下是一些有用的技巧和步骤:
更新系统:
sudo apt update
sudo apt upgrade -y
安装Nginx:
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
安装MySQL/MariaDB:
安装MariaDB(MySQL的一个分支):
sudo apt install mariadb-server -y
初始化数据库安全设置:
sudo mysql_secure_installation
安装PHP:
sudo apt install php-fpm php-mysql -y
配置Nginx以处理PHP请求:
编辑Nginx的默认站点配置文件:
sudo nano /etc/nginx/sites-available/default
在配置文件中添加以下内容:
location \.php$ {
include snippets/fastcgi-php.conf;
fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
}
重启Nginx以应用配置更改:
sudo systemctl restart nginx
创建一个简单的PHP文件进行测试:
创建一个 info.php
文件在 /var/www/html
目录下:
echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php
在浏览器中访问 http://your_server_ip/info.php
,查看PHP信息页面。
Nginx优化:
worker_processes
为 auto
以自动适应CPU核心数。sendfile
系统调用。gzip
压缩以减少CPU使用。fastcgi_read_timeout
和 keepalive_timeout
等参数。PHP优化:
MySQL优化:
innodb_buffer_pool_size
,通常设置为系统内存的50%-80%。max_connections
以匹配服务器的处理能力。query_cache_size
和 query_cache_type
。Linux系统优化:
提高文件描述符限制:
ulimit -n 65535
调整网络参数以优化网络性能:
sysctl -w net.core.somaxconn=65535
sysctl -w net.ipv4.ip_local_port_range="1024 65535"
sysctl -w net.ipv4.tcp_fin_timeout="30"
使用强密码:
/etc/security/pwquality.conf
文件。配置防火墙:
ufw
限制入站和出站流量:sudo apt install ufw
sudo ufw enable
sudo ufw allow OpenSSH
sudo ufw allow 'Nginx Full'
配置SSH安全性:
设置数据库的安全选项:
mysql_secure_installation
命令进行安全设置。限制远程root登录:
bind-address
为 127.0.0.1
,或者注释掉这一行,以允许远程访问。通过以上步骤和技巧,你可以在Debian系统上成功配置和优化LNMP环境。记得定期更新系统和软件包,以保持最佳的安全性和性能。