您好!欢迎访问福玩代码!
广告位

网站首页正常打开 内页404是怎么回事

栏目: 日期: 浏览:5

一、核心原因(90% 都是这几个)

1. 伪静态规则错误 / 没生效(最常见)

情况 1:选错服务器环境(Nginx/Apache 搞反)

  • 宝塔网站设置 → 服务器软件查看:

    • 显示 nginx → 必须用 Nginx 规则

    • 显示 Apache → 必须用 Apache 规则用错规则,百分百内页 404

情况 2:伪静态没保存 / 缓存没清

  1. 重新进入「伪静态」,粘贴对应规则,点击保存

  2. 宝塔面板重启网站(网站→对应站点→重启)

  3. 浏览器强制刷新 Ctrl+F5,清缓存

情况 3:PbootCMS 规则少参数(重点)

PbootCMS 必须带 ?s=错误示例(你之前如果写成下面这样必 404):
# 错误 rewrite ^(.*)$ /index.php?$1 last; # 正确 PbootCMS Nginx if (!-e $request_filename) {    rewrite ^(.*)$ /index.php?s=$1 last;    break; }
ZBlog 规则确认:
# ZBlog 正确 Nginx if (-f $request_filename) { break; } if (-d $request_filename) { break; } rewrite ^(.*)$ /index.php?$1 last;

2. 程序后台「伪静态开关」没开启(高频问题)

👉 PbootCMS

  1. 登录网站后台 → 系统配置 → 站点配置

  2. 找到 开启伪静态(URL 重写) → 设为 开启

  3. 保存,清理程序缓存,再测试内页

👉 ZBlogPHP

  1. 后台 → 网站设置 → 静态化设置

  2. 开启 URL 重写(伪静态)

  3. 选择对应静态模式,保存并重建缓存

关键点:服务器伪静态规则 + 程序后台开关 必须同时开启,只开一边必然内页 404。


3. 网站目录、权限问题

  1. 站点根目录不对宝塔网站→设置→网站目录,确认程序文件就在根目录,不是放在 publicwwwroot 子文件夹里。

    • 如果程序在 public 子目录:需要单独配子目录伪静态

  2. 文件权限不足根目录、index.php 权限建议设置:755(目录)、644(文件),宝塔直接右键授权即可。


4. 域名、HTTPS / 301 冲突

  1. 开启了 HTTPS,但伪静态 / 重写规则没适配 HTTPS,导致内页跳转 404

  2. 绑定了多个域名,首页能进,内页解析异常处理:

    • 宝塔开启 SSL 并强制 HTTPS

    • 伪静态规则保持不变,重启网站测试


5. 路由 / 栏目地址异常(程序本身问题)

  • 后台修改过栏目别名、文章别名,保存后没更新缓存操作:后台清空全站缓存 + 重建 URL,再访问内页。


二、快速排查步骤(按顺序做,最快解决)

  1. 查看宝塔网站服务器类型(Nginx/Apache),替换成对应正确伪静态规则并保存

  2. 重启宝塔网站服务

  3. 进入程序后台,开启伪静态开关,清空程序缓存

  4. 浏览器 Ctrl+F5 强制刷新内页测试

  5. 仍 404:检查网站目录是否正确、文件权限
    文章由福玩代码编辑 https://www.fouwan.com