1panel 面板出现 404 错误怎么解决

chinaz
chinaz 初级会员超兽战士
发布于 2026-10-08 19:58 ·1 浏览 ·0 回复

学完这篇,你能分清 1Panel 的 404 到底是面板自身返回的、还是网站程序返回的,并按步骤排查到具体原因。

第一步:先确认这个 404 是谁返回的

这一步的目的是定位"责任方",做完你就能知道该查面板还是查网站。

打开浏览器按 F12,切到 Network(网络) 标签,刷新出错的页面,点开那条红色的请求,看 Response Headers(响应头) 里的 Server 字段和响应体内容:

  • 响应体是一行纯文本 404 page not found → 这是 1Panel 面板本体(Go 程序)返回的,往第二步查。
  • Server: openresty → 这是 1Panel 自带的 OpenResty 返回的,属于网站层问题,跳到第六步。
  • Server: nginx 而你并没在 1Panel 里装过 nginx → 说明前面还有一层反向代理,跳到第五步。

注意:别急着重启服务器。先看清是哪个 Server 返回的,能省掉一半无用操作。

第二步:检查安全入口路径是否写对

这一步解决"面板本身打不开、直接 404"的问题。

1Panel 默认开启了安全入口,访问 http://服务器IP:端口 而不带入口路径,会直接返回 404,这是最常见的误判。

SSH 登录服务器,执行:

1pctl user-info

输出里会有类似这样一行:

面板地址: http://192.168.1.10:34567/abcd1234

必须完整复制这个地址(含 /abcd1234 这段)去访问。如果只输 IP 和端口,就是 404。

想修改或关闭入口:登录面板后,点左侧菜单 设置 → 安全 → 安全入口,在输入框里填新路径,点 确认。填 / 并保存即关闭安全入口。

注意:入口路径不要用 admin、login 这类常见词,也不要带 / 符号。

第三步:确认 1Panel 服务在正常运行

这一步排除"服务挂了导致 404"。

1pctl status

或

systemctl status 1panel

看到 active (running) 即为正常。如果没运行,执行 1pctl restart 重启;启动失败看日志:

1pctl logs

或

tail -n 200 /opt/1panel/log/1Panel.log

第四步:排查端口被占用或防火墙拦截

这一步排除"端口根本没通"。

ss -lntp | grep 34567

把 34567 换成你 1pctl user-info 里看到的实际端口。没有输出说明端口没被监听。

再确认云服务器安全组和本机防火墙已放行该端口:

firewall-cmd --list-ports

第五步:套了 Nginx 反代时,重点看 proxy_pass

这一步专治"外面还有一层 Nginx 时面板 404"。

打开那台 Nginx 的站点配置,找到 location / 段。典型的踩坑写法是:

proxy_pass http://127.0.0.1:34567/;   # 结尾多了斜杠

结尾带 / 会把原始路径截断,安全入口 /abcd1234 被丢掉,于是 404。改成不带路径:

proxy_pass http://127.0.0.1:34567;

保存后执行 nginx -t 测试语法,再 nginx -s reload 重载。

第六步:网站/应用 404 的三种常见原因

这一步处理"面板能进,但站点页面 404"。

  1. 网站目录指错:面板左侧 网站 → 网站,点域名进入详情,查看 网站目录 字段,确认里面的 index.php 或 index.html 真实存在。可用 ls /opt/1panel/www/sites/你的域名/index 核对。
  2. 没装运行环境:PHP 站点必须在 应用商店 里装过对应版本的 PHP,且在网站详情页的 运行环境 下拉框里选中它。
  3. 伪静态缺失:WordPress、Typecho 这类程序,站内文章页 404 基本都是伪静态没配。在网站详情页点 配置文件,把伪静态规则切换为对应程序(如 wordpress),保存后重载。

注意:改完配置一定要点页面上的 保存 并等提示"保存成功",只改不保存等于没改。

第七步:看日志定位真实原因

还在 404 的话,去 网站 → 网站 → 点域名 → 日志,看 access.log 里那条 404 请求的完整路径,和你期望的路径比对,看是路径拼错、大小写不对,还是根本没走到后端。OpenResty 自身的错误日志可以在 应用商店 → 已安装 → OpenResty → 日志 里查看。

小结

  • 先用浏览器 F12 看 Server 响应头,区分是面板 404 还是网站 404。
  • 面板 404 九成是忘带安全入口路径,用 1pctl user-info 拿到完整地址。
  • 服务异常用 1pctl status / 1pctl restart / 1pctl logs 三连。
  • 外层 Nginx 反代时,proxy_pass 结尾的斜杠会导致安全入口丢失,必须去掉。
  • 网站 404 按顺序查:网站目录 → 运行环境 → 伪静态规则。
  • 最后一步永远看日志,别靠猜。
版权声明:本文来自 GJ站长论坛《1panel 面板出现 404 错误怎么解决》
原文链接:https://www.gj0.com/thread-1163.html
转载请注明出处并保留本声明;内容仅代表作者观点,与本站立场无关。若本文涉嫌侵权,请联系本站处理。

全部回复 0

还没有回复,来抢沙发~