如何在nginx,debian上安装wordpress
在 Debian 上用 Nginx 安装 WordPress,核心是搭建 **LNMP (Nginx + MariaDB + PHP-FPM)** 环境,再下载配置 WordPress 并完成 Nginx 伪静态。下面是 Debian 11 / 12 通用的详细步骤。 — ### 一、更新系统并安装 LNMP 组件 先登录服务器,执行: “`bash sudo apt update && sudo apt upgrade -y “` #### 1. 安装 Nginx “`bash sudo apt install -y nginx “` 启动并设置开机自启: “`bash sudo systemctl start nginx sudo systemctl enable nginx “` #### 2. 安装 MariaDB(MySQL 替代) “`bash sudo apt install -y mariadb-server mariadb-client sudo systemctl start mariadb sudo systemctl enable mariadb “` **安全初始化数据库(关键)** “`bash sudo mysql_secure_installation “` 按提示设置: – Enter current password for root: **直接回车** – Switch to unix_socket authentication? **n** – Change the root password? **Y** → 设置你的数据库 root 密码 – Remove anonymous users? **Y** – Disallow root login remotely? **Y** – Remove test database and access to it? **Y** – Reload privilege tables now? **Y** #### 3. 安装 PHP 8.2 + 必要扩展(WordPress 必需) “`bash sudo apt install -y php8.2-fpm php8.2-mysql php8.2-gd php8.2-curl \ php8.2-mbstring php8.2-xml php8.2-zip php8.2-bcmath php8.2-imagick “` 启动 PHP-FPM: “`bash sudo systemctl start php8.2-fpm sudo systemctl enable php8.2-fpm “` — ### 二、创建 WordPress 数据库与用户 “`bash sudo mariadb -u root -p “` 输入刚才设置的数据库 root 密码,进入 MariaDB 命令行: “`sql — 创建数据库(自定义库名,如 wp_db) CREATE DATABASE wp_db DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; — 创建用户(wp_user / 你的密码) CREATE USER ‘wp_user’@’localhost’ IDENTIFIED BY ‘你的数据库密码’; — 授权 GRANT ALL ON wp_db.* TO ‘wp_user’@’localhost’; — 刷新权限并退出 FLUSH PRIVILEGES; EXIT; “` **记住三要素**: – 数据库名:`wp_db` – 用户名:`wp_user` – 密码:你刚才设置的密码 — ### 三、下载并配置 WordPress #### 1. 进入网站根目录 Debian Nginx 默认根目录:`/var/www/html` “`bash cd /var/www/html # 删除默认页 sudo rm -f index.nginx-debian.html “` #### 2. 下载最新 WordPress(国内用清华镜像更快) “`bash # 官方 # sudo wget https://wordpress.org/latest.zip # 国内推荐(清华镜像) sudo wget https://mirrors.tuna.tsinghua.edu.cn/wordpress/latest.zip “` #### 3. 解压并移动文件 “`bash sudo apt install -y unzip sudo unzip latest.zip # 把 WordPress 所有文件移到根目录 sudo mv wordpress/* ./ # 清理垃圾 sudo rm -rf latest.zip wordpress/ “` #### 4. 设置正确权限(必须) Nginx/PHP 运行用户是 `www-data`,必须给足权限: “`bash 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 {} \; “` — ### 四、配置 Nginx 虚拟主机(支持伪静态) #### 1. 新建站点配置 “`bash sudo nano /etc/nginx/sites-available/wordpress.conf “` 粘贴以下配置(**修改域名与 PHP 版本**): “`nginx server { listen 80; # 你的域名(或服务器IP) server_name 你的域名或IP; root /var/www/html; index index.php index.html index.htm; access_log /var/log/nginx/wordpress.access.log; error_log /var/log/nginx/wordpress.error.log; # 允许上传大文件 client_max_body_size 100M; # WordPress 伪静态(固定链接) location / { try_files $uri $uri/ /index.php?$args; } # PHP 解析 location ~ \.php$ { include snippets/fastcgi-php.conf; # 注意:Debian 12 默认 php8.2-fpm.sock fastcgi_pass unix:/run/php/php8.2-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } # 静态文件缓存 location ~* \.(jpg|jpeg|png|gif|ico|css|js|svg|woff2)$ { expires max; log_not_found off; } # 禁止访问敏感文件 location ~ /\.ht { deny all; } } “` #### 2. 启用站点、禁用默认站 “`bash sudo ln -s /etc/nginx/sites-available/wordpress.conf /etc/nginx/sites-enabled/ sudo rm -f /etc/nginx/sites-enabled/default “` #### 3. 测试配置并重启 Nginx “`bash sudo nginx -t # 提示 syntax ok 再重启 sudo systemctl restart nginx “` — ### 五、浏览器完成 WordPress 安装 1. 访问:`http://你的域名或服务器IP` 2. 选择语言 → 继续 3. 填写数据库信息: – 数据库名:`wp_db` – 用户名:`wp_user` – 密码:你设置的数据库密码 – 数据库主机:`localhost` – 表前缀:默认 `wp_` 即可 4. 提交 → 现在安装 5. 设置站点标题、管理员账号、邮箱、密码 → 安装 WordPress 6. 登录后台:`http://你的域名或IP/wp-login.php` — ### 六、后续必做(可选但强烈建议) #### 1. 开启伪静态(固定链接) WP 后台 → 设置 → 固定链接 → 选择 **文章名** 样式 → 保存。Nginx 已配置,直接生效。 #### 2. 安装 SSL(HTTPS) “`bash sudo apt install -y certbot python3-certbot-nginx sudo certbot –nginx -d 你的域名 “` 按提示输入邮箱、同意协议,自动配置 HTTPS。 #### 3. 防火墙(如开启) “`bash sudo ufw allow ‘Nginx Full’ sudo ufw enable “` — ### 常见问题 – **403 Forbidden**:权限错误 → 重新执行 `chown -R www-data:www-data /var/www/html/` – **无法建立数据库连接**:数据库名/用户/密码错误,或 MariaDB 未启动 – **页面纯文本不解析 PHP**:Nginx 配置中 `fastcgi_pass` 路径错误(核对 `php -v` 版本) 需要我给你一份可直接复制的 **LNMP+WordPress 一键安装脚本** 吗?你只需填入域名和数据库密码,运行脚本即可全自动部署。