linux

LNMP与WordPress如何搭配使用

小樊
50
2025-10-03 08:08:49
栏目: 编程语言

一、准备工作
在搭配使用LNMP(Linux+Nginx+MySQL+PHP)与WordPress前,需完成基础环境准备:选择稳定的Linux发行版(如Ubuntu 22.04 LTS、CentOS Stream 9),并确保服务器具备公网IP或域名(若需通过域名访问)。同时,建议关闭SELinux(CentOS)或调整防火墙规则,避免后续配置被拦截。

二、安装与配置LNMP环境
LNMP是WordPress运行的基础,需按顺序安装并配置各组件:

1. 安装Nginx

使用系统包管理器安装Nginx(以Ubuntu为例):

sudo apt update && sudo apt install nginx -y

安装完成后,启动Nginx并设置开机自启:

sudo systemctl start nginx && sudo systemctl enable nginx

验证Nginx是否运行正常:在浏览器输入服务器IP,若出现“Welcome to nginx!”页面则表示成功。

2. 安装MySQL/MariaDB

MySQL/MariaDB用于存储WordPress的数据库(如文章、用户信息)。以Ubuntu为例:

sudo apt install mysql-server -y

安装完成后,运行安全脚本强化数据库安全(设置root密码、移除匿名用户、禁止root远程登录):

sudo mysql_secure_installation

验证MySQL服务状态:

sudo systemctl status mysql

若需创建专用数据库(推荐),可登录MySQL并执行:

CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

3. 安装PHP及必要扩展

WordPress依赖PHP 7.4及以上版本(推荐PHP 8.0+),并需要MySQL扩展(用于连接数据库)。以Ubuntu为例:

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

安装完成后,启动PHP-FPM并设置开机自启:

sudo systemctl start php8.0-fpm && sudo systemctl enable php8.0-fpm

关键配置:编辑PHP-FPM池文件(如/etc/php/8.0/fpm/pool.d/www.conf),确保以下参数正确(避免权限问题):

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

重启PHP-FPM使配置生效:

sudo systemctl restart php8.0-fpm

4. 配置Nginx支持PHP

编辑Nginx的默认站点配置文件(如/etc/nginx/sites-available/default),添加PHP处理逻辑:

server {
    listen 80;
    server_name yourdomain.com www.yourdomain.com;  # 替换为你的域名或IP
    root /var/www/html;  # WordPress安装目录(可自定义)
    index index.php index.html index.htm;

    location / {
        try_files $uri $uri/ /index.php?$args;  # 将请求转发给WordPress路由
    }

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;  # 加载FastCGI配置
        fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;  # PHP-FPM socket路径(根据版本调整)
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;  # 传递脚本路径
        include fastcgi_params;
    }

    location ~ /\.ht {
        deny all;  # 禁止访问.htaccess文件(提升安全性)
    }

    # 可选:优化静态文件缓存
    location ~* \.(jpg|jpeg|png|gif|ico|css|js|woff2)$ {
        expires 30d;
        add_header Cache-Control "public, no-transform";
    }
}

测试Nginx配置语法是否正确:

sudo nginx -t

若无错误,重启Nginx使配置生效:

sudo systemctl restart nginx

三、部署WordPress
完成LNMP配置后,即可部署WordPress:

1. 下载并解压WordPress

从WordPress官网下载最新稳定版(如latest.tar.gz),并解压到Nginx根目录:

cd /var/www/html
sudo wget https://cn.wordpress.org/latest.tar.gz
sudo tar -xzvf latest.tar.gz --strip-components=1  # 解压到当前目录
sudo rm -rf latest.tar.gz  # 删除压缩包

设置目录权限(确保Nginx用户www-data可读写):

sudo chown -R www-data:www-data /var/www/html
sudo find /var/www/html -type d -exec chmod 755 {} \;
sudo find /var/www/html -type f -exec chmod 644 {} \;

2. 配置WordPress数据库连接

复制WordPress的示例配置文件并重命名:

cd /var/www/html
sudo cp wp-config-sample.php wp-config.php

编辑wp-config.php,修改以下参数(替换为你的数据库信息):

define('DB_NAME', 'wordpress');          // 数据库名(需与MySQL中创建的一致)
define('DB_USER', 'wordpressuser');      // 数据库用户名(需与MySQL中创建的一致)
define('DB_PASSWORD', 'yourpassword');   // 数据库密码(需与MySQL中创建的一致)
define('DB_HOST', 'localhost');          // 数据库主机(本地为localhost)
define('DB_CHARSET', 'utf8mb4');         // 字符集(推荐utf8mb4,支持emoji)
define('DB_COLLATE', '');                // 排序规则(留空即可)

安全增强:在wp-config.php顶部添加以下代码,防止敏感信息泄露:

define('WP_DEBUG', false);  // 关闭调试模式(生产环境务必设置为false)

四、完成WordPress安装

  1. 访问安装页面:在浏览器输入服务器IP或域名(如http://yourdomain.com),若看到WordPress安装向导,则表示配置成功。
  2. 填写网站信息:输入网站标题、管理员用户名(建议使用强密码,避免使用admin)、密码和邮箱(用于接收通知)。
  3. 完成安装:点击“安装WordPress”,系统会自动创建数据库表并生成管理员账号。安装完成后,使用管理员账号登录后台(http://yourdomain.com/wp-admin)。

五、后续配置与优化

  1. 设置SSL证书:使用Let’s Encrypt免费SSL证书(通过Certbot工具),将HTTP升级为HTTPS(提升安全性与SEO排名):

    sudo apt install certbot python3-certbot-nginx -y
    sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
    

    按提示完成证书申请,Certbot会自动修改Nginx配置并重定向HTTP到HTTPS。

  2. 安装必要插件:登录WordPress后台,进入“插件→添加新”,安装常用插件:

    • Yoast SEO:优化网站SEO,提升搜索引擎收录。
    • Akismet Anti-Spam:过滤垃圾评论,保护网站安全。
    • Wordfence Security:防火墙与恶意软件扫描,防范黑客攻击。
    • UpdraftPlus:定期备份网站数据(数据库+文件),避免数据丢失。
  3. 选择主题:进入“外观→主题→添加新”,浏览WordPress官方主题库(如Astra、GeneratePress),选择适合的主题并激活(可根据需求自定义主题样式)。

  4. 定期维护

    • 更新WordPress核心、主题和插件(避免安全漏洞)。
    • 备份网站数据(每周至少一次,可使用UpdraftPlus或云备份服务)。
    • 监控网站性能(使用插件如Query Monitor,优化慢查询)。

0
看了该问题的人还看了