构建LNMP环境并部署WordPress网站的完整指南

来自:素雅营销研究院

头像 方知笔记
2025年05月04日 16:43

一、LNMP环境简介

LNMP是指Linux+Nginx+MySQL+PHP这一经典网站服务器架构组合。与传统的LAMP(Linux+Apache+MySQL+PHP)相比,LNMP架构具有更高的并发处理能力和更低的内存消耗,特别适合中小型网站和博客系统。WordPress作为全球最流行的内容管理系统(CMS),在LNMP环境下运行可以获得优异的性能表现。

二、准备工作

在开始构建LNMP环境前,需要做好以下准备:

  1. 服务器选择:推荐使用CentOS 7/8或Ubuntu 18.04/20.04等主流Linux发行版
  2. 系统更新:执行sudo apt update && sudo apt upgrade -y(Ubuntu)或sudo yum update -y(CentOS)
  3. 创建非root用户:建议使用普通用户操作,通过sudo获取权限

三、安装Nginx服务器

  1. 安装Nginx:
# Ubuntu/Debian
sudo apt install nginx -y

# CentOS/RHEL
sudo yum install epel-release -y
sudo yum install nginx -y
  1. 启动并设置开机自启:
sudo systemctl start nginx
sudo systemctl enable nginx
  1. 验证安装:浏览器访问服务器IP,应看到Nginx欢迎页面

四、安装MySQL数据库

  1. 安装MySQL服务器:
# Ubuntu/Debian
sudo apt install mysql-server -y

# CentOS/RHEL
sudo yum install mysql-server -y
  1. 安全配置MySQL:
sudo mysql_secure_installation

按照提示设置root密码、移除匿名用户、禁止root远程登录等

  1. 启动并设置开机自启:
sudo systemctl start mysqld
sudo systemctl enable mysqld

五、安装PHP及必要扩展

  1. 安装PHP和常用扩展:
# Ubuntu/Debian
sudo apt install php-fpm php-mysql php-curl php-gd php-mbstring php-xml php-xmlrpc php-soap php-intl php-zip -y

# CentOS/RHEL
sudo yum install php-fpm php-mysqlnd php-curl php-gd php-mbstring php-xml php-soap php-intl php-zip -y
  1. 配置PHP-FPM: 编辑/etc/php-fpm.d/www.conf(CentOS)或/etc/php/7.x/fpm/pool.d/www.conf(Ubuntu):
user = nginx
group = nginx
listen = /run/php-fpm/www.sock
listen.owner = nginx
listen.group = nginx
  1. 启动PHP-FPM:
sudo systemctl start php-fpm
sudo systemctl enable php-fpm

六、配置Nginx支持PHP

  1. 创建网站配置文件/etc/nginx/conf.d/wordpress.conf
server {
listen 80;
server_name your_domain.com;
root /var/www/wordpress;
index index.php index.html index.htm;

location / {
try_files $uri $uri/ /index.php?$args;
}

location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php-fpm/www.sock;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}

location ~ /\.ht {
deny all;
}
}
  1. 测试配置并重启Nginx:
sudo nginx -t
sudo systemctl restart nginx

七、安装并配置WordPress

  1. 创建网站目录并设置权限:
sudo mkdir -p /var/www/wordpress
sudo chown -R nginx:nginx /var/www/wordpress
sudo chmod -R 755 /var/www/wordpress
  1. 下载最新版WordPress:
cd /tmp
wget https://wordpress.org/latest.tar.gz
tar -xzvf latest.tar.gz
sudo cp -r wordpress/* /var/www/wordpress/
  1. 创建WordPress数据库:
mysql -u root -p

在MySQL命令行中执行:

CREATE DATABASE wordpress;
CREATE USER 'wpuser'@'localhost' IDENTIFIED BY 'your_strong_password';
GRANT ALL PRIVILEGES ON wordpress.* TO 'wpuser'@'localhost';
FLUSH PRIVILEGES;
EXIT;
  1. 配置WordPress:
cd /var/www/wordpress
cp wp-config-sample.php wp-config.php
nano wp-config.php

修改数据库连接信息:

define('DB_NAME', 'wordpress');
define('DB_USER', 'wpuser');
define('DB_PASSWORD', 'your_strong_password');
define('DB_HOST', 'localhost');
  1. 设置文件权限:
sudo chown -R nginx:nginx /var/www/wordpress
sudo find /var/www/wordpress -type d -exec chmod 750 {} \;
sudo find /var/www/wordpress -type f -exec chmod 640 {} \;

八、完成WordPress安装

  1. 浏览器访问服务器IP或域名,按照WordPress安装向导完成安装
  2. 设置网站标题、管理员账号等信息
  3. 登录WordPress后台(your_domain.com/wp-admin)进行进一步配置

九、安全加固建议

  1. 限制PHP函数:编辑php.ini,添加:
disable_functions = exec,passthru,shell_exec,system,proc_open,popen
  1. 安装防火墙:
# Ubuntu
sudo apt install ufw
sudo ufw allow 'Nginx Full'
sudo ufw enable

# CentOS
sudo yum install firewalld
sudo systemctl start firewalld
sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload
  1. 定期更新系统组件:
# Ubuntu
sudo apt update && sudo apt upgrade -y

# CentOS
sudo yum update -y

通过以上步骤,您已成功搭建了LNMP环境并部署了WordPress网站。后续可以根据需要安装主题、插件,并进一步优化服务器性能和安全设置。