Ubuntu LNMP环境下如何部署WordPress
导读:Ubuntu LNMP 部署 WordPress 实操指南 一 环境准备与安装 更新系统并安装组件: sudo apt update && sudo apt upgrade -y sudo apt install -y...
Ubuntu LNMP 部署 WordPress 实操指南
一 环境准备与安装
- 更新系统并安装组件:
- sudo apt update & & sudo apt upgrade -y
- sudo apt install -y nginx mysql-server
- sudo apt install -y php-fpm php-mysql php-gd php-xml php-mbstring php-curl php-zip
- 启动并设为开机自启:
- sudo systemctl start nginx & & sudo systemctl enable nginx
- sudo systemctl start mysql & & sudo systemctl enable mysql
- sudo systemctl start phpX.Y-fpm & & sudo systemctl enable phpX.Y-fpm(将 X.Y 替换为实际版本,如 8.1)
- 建议运行安全加固:
- sudo mysql_secure_installation(设置 root 密码、移除匿名用户等)
二 配置数据库
- 登录数据库并创建站点专用库与用户(请使用强密码):
- mysql -u root -p
- CREATE DATABASE wordpress DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
- CREATE USER ‘wpuser’@‘localhost’ IDENTIFIED BY ‘StrongPassw0rd!’;
- GRANT ALL PRIVILEGES ON wordpress.* TO ‘wpuser’@‘localhost’;
- FLUSH PRIVILEGES;
- EXIT;
- 说明:WordPress 5.6+ 推荐使用 utf8mb4 以完整支持 emoji。
三 部署 WordPress 站点
- 下载并解压到站点根目录(示例为 /var/www/html):
- cd /var/www/html
- sudo wget https://cn.wordpress.org/latest.tar.gz
- sudo tar -xzf latest.tar.gz
- sudo mv wordpress/* .
- sudo rm -rf wordpress latest.tar.gz
- 配置 wp-config.php:
- sudo cp wp-config-sample.php wp-config.php
- 编辑并修改:
- define(‘DB_NAME’, ‘wordpress’);
- define(‘DB_USER’, ‘wpuser’);
- define(‘DB_PASSWORD’, ‘StrongPassw0rd!’);
- define(‘DB_HOST’, ‘localhost’);
- 可选:添加密钥(在 https://api.wordpress.org/secret-key/1.1/salt/ 生成后粘贴)
- 设置目录权限(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 { } ;
- 访问安装向导:打开浏览器访问 http://服务器IP或域名/,按提示完成站点标题、管理员账号等设置。
四 配置 Nginx 与 PHP-FPM
- 编辑站点配置(示例:/etc/nginx/sites-available/default):
- sudo nano /etc/nginx/sites-available/default
- 示例 server 块(按需替换 server_name 与 fastcgi_pass 的 PHP 版本):
- server { listen 80; server_name your_domain.com www.your_domain.com; root /var/www/html; index index.php index.html index.htm; location / { try_files $uri $uri/ /index.php?$args; } location ~ .php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/phpX.Y-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } location ~ /.ht { deny all; }
- }
- 检查并重载 Nginx:
- sudo nginx -t & & sudo systemctl reload nginx
- 验证 PHP 解析(临时):
- echo “” | sudo tee /var/www/html/info.php
- 访问 http://服务器IP/info.php,确认 PHP 与 FPM 正常工作后再删除该文件。
五 安全与优化建议
- 启用 HTTPS(Let’s Encrypt + Certbot):
- sudo apt install -y certbot python3-certbot-nginx
- sudo certbot --nginx -d your_domain.com -d www.your_domain.com
- 按提示自动配置 HTTP→HTTPS 重定向与证书自动续期
- 基础加固与性能优化:
- 防火墙放行:sudo ufw allow ‘Nginx Full’ & & sudo ufw enable
- 禁用不必要插件与主题、仅保留必要 PHP 扩展、定期更新
- 建议开启 OPcache(编辑 /etc/php/X.Y/fpm/php.ini:opcache.enable=1;生产环境可开启 opcache.validate_timestamps=0)
- 静态资源缓存:在 Nginx 的 server 块中添加
- location ~* .(jpg|jpeg|png|gif|ico|css|js)$ { expires 30d; add_header Cache-Control “public, immutable”; }
- 常见问题排查要点:
- 502/504:检查 php-fpm 是否运行、Nginx 与 FPM 的 sock 路径是否一致(如 /var/run/php/phpX.Y-fpm.sock)
- 权限问题:确保 /var/www/html 归属 www-data,目录 755、文件 644
- 数据库连接失败:核对 wp-config.php 中 DB_NAME/DB_USER/DB_PASSWORD/DB_HOST 与数据库实际信息一致。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Ubuntu LNMP环境下如何部署WordPress
本文地址: https://pptw.com/jishu/759569.html
