这个问题在宝塔面板(BT Panel)部署 WordPress 时非常经典,通常不是单一原因造成的,而是伪静态规则缺失、Nginx/Apache 配置冲突、或者 PHP 版本兼容性导致的。
别慌,按照下面这个排查逻辑一步步来,90% 的情况都能解决。
第一步:检查“伪静态”规则(最常见原因)
WordPress 依赖 URL 重写机制才能正常跳转和解析路径。如果你直接访问 http://你的域名/wp-admin/install.php 却显示 404 或空白,大概率是伪静态没配好。
- 登录宝塔面板,点击左侧菜单的 网站。
- 找到你绑定的 WordPress 站点,点击右侧的 设置。
- 切换到 伪静态 标签页。
- 在下拉菜单中,选择 WordPress。
- 点击 保存。
注意:如果你之前手动修改过伪静态代码,请确保没有语法错误。标准的 WordPress 伪静态代码如下:
location / {
try_files $uri $uri/ /index.php?$args;
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
如果使用的是 Apache 环境,请确认根目录下是否存在 .htaccess 文件,且内容包含标准的 WordPress RewriteRule。
第二步:检查 Nginx 配置文件中的 root 或 document_root
有时候伪静态配了,但还是跳不过去,是因为 Nginx 根本没指向正确的目录,或者权限不对。
- 在网站设置的 配置文件 标签页中查看。
- 确保
root指令指向的是你解压 WordPress 后的正确文件夹(通常是/www/wwwroot/你的域名)。 - 关键点:检查是否有
location ~ .php$的代码块。如果没有,WordPress 的 PHP 安装脚本无法执行,页面会直接下载而不是运行。
标准的 PHP 处理段应该长这样:
location ~ .php$ {
fastcgi_pass unix:/tmp/php-cgi-74.sock; # 注意:这里的 socket 路径要根据你实际安装的 PHP 版本调整,比如 php-cgi-80.sock
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
提示:如果你换了 PHP 版本(比如从 7.4 升到 8.0),务必检查这里的 socket 路径是否对应新的 PHP 版本,否则请求会超时或报错。
第三步:PHP 扩展与内存限制
WordPress 安装向导需要一定的 PHP 资源支持。如果你的服务器配置较低,或者 PHP 禁用了某些函数,也会导致白屏或无法跳转。
- 进入 软件商店 -> 已安装 -> 找到你使用的 PHP 版本 -> 设置。
- 检查 禁用函数 列表,确保没有禁用
proc_open,putenv,shell_exec等关键函数(虽然 WP 安装主要靠核心函数,但某些安全插件或服务器安全策略可能会误杀)。 - 将 内存限制 调大一点,建议至少 256M 以上。
- 开启必要的扩展:
mbstring,xml,curl,gd(用于验证码),zip(如果需要在线更新)。
第四步:清理缓存与浏览器强制刷新
有时候问题不在服务器,而在客户端。
- 清除 CDN 缓存:如果你使用了 Cloudflare、阿里云 CDN 或腾讯云 CDN,请在控制台清除全站缓存。CDN 可能会缓存一个错误的 404 页面或重定向循环。
- 浏览器无痕模式:使用 Chrome 的无痕模式打开安装地址,排除本地 Cookie 或插件干扰。
- 硬刷新:按
Ctrl + F5(Windows) 或Cmd + Shift + R(Mac) 强制刷新。
第五步:检查日志定位具体错误
如果以上都没用,我们需要看“尸体”怎么死的。
- 回到网站设置,点击 日志 标签页。
- 查看 错误日志(Error Log)。
- 尝试再次访问安装页面,然后刷新错误日志。
- 常见的错误信息解读:
File not found.:伪静态或 root 路径错误。Primary script unknown:PHP-FPM 配置问题,通常是SCRIPT_FILENAME变量未正确传递。Permission denied:文件权限问题。确保 WordPress 目录所有者是www,权限为755(目录)和644(文件)。可以在宝塔面板的 文件 管理器中右键点击 WordPress 目录,选择 权限管理 进行修正。
第六步:终极方案——重建站点
如果折腾半天还是不行,最省时的方法是:
- 在宝塔面板删除当前出错的网站(不要删除数据文件夹,先备份一下)。
- 重新创建一个新网站,绑定相同域名。
- 上传 WordPress 源码到该目录。
- 重新配置伪静态为 WordPress。
- 重新指定 PHP 版本并重启 PHP-FPM。
总结建议
- 优先排查伪静态:这是新手最容易忽略的一步。
- 关注 PHP 版本匹配:宝塔升级 PHP 后,必须重启服务并检查配置文件中的 socket 路径。
- 权限是关键:确保
www用户对网站目录有读写权限,否则安装过程中写入wp-config.php时会失败。
按照这个流程走一遍,基本能解决绝大多数跳转问题。如果还有异常,请提供具体的错误日志截图,可以进一步精准定位。
云技术博客