【问题标题】:Deploying Laravel 5.4 to Shared Hosting将 Laravel 5.4 部署到共享主机
【发布时间】:2018-12-02 03:45:07
【问题描述】:

我为您准备了一个真正令人头疼的问题!我已经在 Laravel 5.4 应用程序上工作了很长一段时间了,直到昨天我才能够:

  1. 在我的本地机器上开发[仍然可以完美运行]
  2. 将我的更改推送到我的 BitBucket 存储库[这里还可以]
  3. 随后会将这些更改拉动到我的共享托管服务器 (RedHat)[仍在顺利运行]
  4. 然后我运行我的依赖项管理器(npm 和 composer)以使项目到位并正常运行
  5. 清除各种缓存有些问题:
    • php 工匠视图:清除
    • php 工匠路线:清除
    • php artisan 缓存:清除
    • 作曲家转储自动加载
  6. 最后将我的“/public”文件夹移动到网络根目录并更新 index.php 以指向主项目中的“bootstrap/autoload.php”结构,
  7. 我知道我可能缺少其他或几个步骤,但我不确定它们是什么......

话虽如此,我最近尝试使用 Laravel 部署许多应用程序,但在将应用程序部署到生产环境时,我似乎总是遇到同样的问题。我已经阅读了 30 多篇关于此问题的教程,但似乎没有任何内容可以解释为什么我的网站不再工作的问题。

  • 我检查了 Apache 维护的错误日志文件,它是空的。
    • 想知道这是否是权限问题,但似乎并非如此(所有文件夹设置为 775,文件设置为 664,由各种来源指定并由 serverName:userName 拥有)
  • 浏览器控制台仅显示 500 服务器错误。
  • 我看到的只是 “哎呀,好像出了点问题。” 两次。
    • 必须有某种方式来显示更好的错误详细信息(配置调试设置已设置为 true)

此时的任何建议都有助于让我朝着正确的方向前进!

======= 更新 =======

为了彻底起见,也为了避免其他人头疼,我将在此处发布采取的措施。

  1. 关注@user123456 提到的tutorial(需要权限)
  2. 为应用程序生成新密钥
  3. 运行php artisan config:clear
  4. 参加比赛,马上回答!

【问题讨论】:

  • 您是否生成了新的应用程序密钥?您可能需要运行 php artisan key:generate 另外,请确保您有一个工作的 .env 文件。
  • 环境不仅仅用于数据库连接; laravel 也将它用于其他事情,例如它包含您的应用程序密钥。如果你已经拥有它很好。这可能是一个权限问题,所以检查一下并再次关注后者stackoverflow.com/questions/30639174/…,然后看看你是否收到不同的错误消息
  • 查看存储/日志中的日志文件,看看错误是什么。当你收到 Whoops 错误时,Laravel 将记录错误消息。
  • 运行php artisan config:clear
  • 你快到了。只需生成另一个密钥并清除缓存即可。

标签: php laravel shared-hosting production


【解决方案1】:

我绝不会推荐对 Laravel 应用程序使用共享主机。您将面临许多权限、作曲家和外部依赖的问题。相反,您可以使用 DigitalOcean、Linode、vultr 等云服务器并在其上部署 laravel 应用程序。如果你不了解 linux 和创建 Stacks,你可以使用 Cloudways 来部署 laravel。

https://dev.to/rizwan_saquib/deploy-laravel-application-on-cloud-easily-with-cloudways

【讨论】:

  • 感谢@ShahrozeNawaz 的建议。
【解决方案2】:

你需要确保你有一个工作的 .env 文件。

完成后,运行php artisan key:generate 为您的应用程序创建一个密钥,之后您应该清除应用程序的缓存,如下所示php artisan config:clear

【讨论】:

    猜你喜欢
    • 2019-09-25
    • 1970-01-01
    • 2020-09-30
    • 1970-01-01
    • 2021-06-28
    • 1970-01-01
    • 2020-03-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多