You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Laravel站点部署至Bluehost子域名遇故障,求助排查

Laravel部署到Bluehost共享主机遇到的路由与数据库连接问题

更新: 目前已解决大部分部署问题,仅剩的数据库连接问题也已修复。之前访问需数据库连接的路由时,出现Access denied for user 'bob'@'localhost' (using password: YES)错误,原因是Bluehost的cPanel机制会在数据库名和用户名前添加域名第2-9位字符加下划线作为前缀——比如我本地的neighborhood数据库实际在主机上是obertrod_neighborhood,用户名bob实际为obertrod_bob。修改.env文件中的DB_DATABASE和DB_USERNAME值后,数据库已成功连接。

我查了不少Laravel部署到Bluehost的帖子,很多人都碰到过类似难题,但没找到能匹配我情况的解决方案。

我的环境与已完成操作

  • 本地开发的站点完全正常,用php artisan serve启动localhost:8000后,首页(/路由)和其他路由(如/users)都能正常访问。
  • 站点路由直接访问MySQL数据库,未使用Laravel迁移,本地是用MySQL Workbench创建的数据库。
  • Bluehost上的子域名为neighborhood.robertrodes.com,子域名根目录的index.html能正常显示“test”,说明子域名本身运行正常。
  • 已将本地数据库导出为.sql文件,通过phpMyAdmin导入到Bluehost的数据库中,数据库结构正确,能在phpMyAdmin里正常执行CRUD操作。
  • 最初尝试用Bluehost的Softaculous安装Laravel,再上传模型、视图、控制器、路由及CSS文件到对应目录,首页(/路由)能显示,但其他路由重定向到public后出现404错误。
  • 后来尝试跳过Softaculous,直接把本地所有文件复制到空白子域名,曾出现403 forbidden错误,还出现过重定向到neighborhood/robertrodes.com/public/public的404错误。编辑: 该问题由缓存导致,现已解决,现在站点能正常显示测试内容,首页可通过URL访问public目录。
  • 当前子域名的状态:本地版本的所有站点文件都放在子域名的根目录下。

当前疑问

现在我遇到了超出能力范围的问题,Bluehost不支持Laravel,Laravel官方文档里也找不到相关内容,希望有人能帮忙排查故障。

我怀疑是部分文件的路径配置有误,如果能明确负责配置的文件位置,我应该能自行修复。比如之前请求neighborhood.robertrodes.com时会重定向到neighborhood.robertrodes.com/public/public,但我找不到对应的配置文件——编辑: 该问题已通过清除缓存解决。根目录下没有.php文件,public目录里的index.php也不含“public”字样。

内容的提问来源于stack exchange,提问作者BobRodes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.15 20:50:17