现象
在宝塔面板中创建新站点后,通过域名或IP访问网站时,出现 404 Not Found、403 Forbidden 错误,或者动态页面(如 WordPress、ThinkPHP)无法正确路由,静态资源加载异常。这通常是因为站点未正确绑定域名、运行目录设置错误或伪静态规则缺失导致。
原因
主要原因包括:DNS 解析未生效或指向错误 IP;宝塔站点未绑定实际使用的域名;网站根目录与代码实际存放目录不一致(例如代码在 /www/wwwroot/site.com/public 但站点根目录设为 /www/wwwroot/site.com);Web 服务器(Nginx/Apache)未配置或配置错误的伪静态规则,导致请求无法映射到入口文件。
先自查(3 分钟)
首先确认域名解析是否正确,使用 ping 命令检查域名是否指向当前服务器 IP。其次登录宝塔面板,检查站点列表中该站点的域名是否已添加,以及“运行目录”是否指向代码的实际入口文件夹。最后检查 Web 服务状态,确保 Nginx 或 Apache 服务正在运行且未报错。
解决步骤
第一步,在宝塔面板左侧菜单点击“网站”,选择“添加站点”。在弹出窗口中,输入域名(如 www.example.com),选择数据库(可选),并勾选“创建 PHP 版本”选择所需版本。关键步骤是“运行目录”:如果框架要求 public 目录为根目录(如 ThinkPHP、Laravel),请务必选择“public”或手动修改路径;如果是传统 PHP 或 WordPress,通常选择“根目录”。点击“提交”完成创建。
第二步,绑定域名。如果创建时未输入域名,或后续需要增加主域名/泛域名,点击站点列表中的“域名”按钮,在“主域名”或“子域名”栏添加域名,点击“保存”。确保域名已解析到服务器 IP。
第三步,设置运行目录。点击站点列表中的“设置”按钮,选择“网站目录”标签页。确认“运行目录”下拉框选择正确。若代码结构特殊,可点击“修改”手动输入绝对路径。注意:修改运行目录后,需确保该目录下有 index.php 或 index.html 文件,否则访问会报 404。
第四步,配置伪静态。点击站点“设置”中的“伪静态”标签页。如果是常见框架(WordPress、ThinkPHP 等),可在下拉菜单中选择对应模板并点击“保存”。如果是自定义规则,直接粘贴 Nginx 或 Apache 伪静态代码。保存后,宝塔会自动重载 Web 服务配置。
注意:修改伪静态和运行目录会触发 Web 服务重载,若配置语法错误可能导致网站短暂不可用,建议先在测试环境验证或备份当前配置。
验证
在浏览器中访问域名,检查首页是否正常加载。若使用动态框架,尝试访问一个子页面(如 /article/1)或静态资源(如 /css/style.css),确认无 404 错误。若使用 Nginx,可登录服务器执行以下命令查看错误日志,排查具体报错:
tail -n 50 /www/wwwlogs/error.log
若使用 Apache,日志路径通常为:
tail -n 50 /www/server/apache/logs/error.log
确认日志中无 “No such file or directory” 或 “Permission denied” 等错误。
预防
1. 创建站点前,先确认代码框架的入口目录结构,避免创建后频繁修改运行目录。2. 域名解析生效后,再在宝塔绑定域名,避免 DNS 传播延迟导致的混淆。3. 修改伪静态前,备份当前配置文件(宝塔会自动备份,但手动记录规则更稳妥)。4. 定期监控 Web 服务日志,及时发现配置错误。
在奇异互动如何最快处理
若因服务器资源不足(如 CPU 100%、内存溢出)导致网站无法访问,请前往会员中心“云服务器”详情页,使用“升降配置”功能提升性能,或使用“重启”功能重启实例。若因 IP 被封禁或网络不通,可使用“更换 IP / 增加 IP”功能。若域名解析未生效,请前往“域名管理”检查“DNS 解析”记录。若以上操作均无法解决,且确认是宝塔软件层面或系统底层故障,请提交工单。提交时请附上:站点域名、服务器 IP、宝塔面板截图(包含站点设置和伪静态配置)、以及 /www/wwwlogs/error.log 最后 50 行日志内容,以便工程师快速定位。

