【问题标题】:View not found error on Laravel deployment to Heroku在 Laravel 部署到 Heroku 时查看未找到错误
【发布时间】:2018-05-30 14:30:31
【问题描述】:

已经有一段时间了,没有任何意义。将 Laravel 5 应用程序部署到 Heroku。我得到了一个未找到视图的错误。奇怪的是,Laravel 似乎正在一个不存在的文件夹中寻找视图,即这里的错误:

 (1/1) InvalidArgumentException

View [site.home] not found.
in FileViewFinder.php (line 137)
at FileViewFinder->findInPaths('site.home', array('/tmp/build_2069bb9b168e1f24aa9a231cfa30b0d9/resources/views'))in FileViewFinder.php (line 79)
at FileViewFinder->find('site.home')in Factory.php (line 128)

Heroku 将应用程序部署到 /app 文件夹,但出于某种奇怪的原因,Laravel 会在这个不存在的 /tmp/build_2069bb9b168e1f24aa9a231cfa30b0d9/ 文件夹中查找视图。我注意到由于某种原因在bootstrap/cache/config.php 文件中提到了这个文件夹。我做了很多php artisan config:cache,虽然这确实修复了bootstrap/cache/config.php文件,但我仍然收到这个错误。

试图清除缓存,配置 - 没有任何工作 - 错误没有让步。该文件夹从哪里开始 - 甚至检查了/tmp 文件夹,那里什么都没有。甚至添加符号链接也无济于事。

【问题讨论】:

  • 您是在其他浏览器中尝试还是通过清除浏览器的缓存/cookies?
  • 是的 - 一切 - 清除浏览器缓存,在新浏览器中打开 - 它被这个不存在的文件夹 /tmp/build_2069bb9b168e1f24aa9a231cfa30b0d9 所困扰
  • 你是否也删除了storage/framework/cache,storage/framework/sessionsstorage/framework/views
  • 那些文件夹已经是空的 - 我完全删除了它们 - 仍然是同样的错误..这绝对与在这里配置 heroku 有关......
  • 你有没有找到解决这个问题的方法。我正在经历同样的事情。

标签: php laravel heroku


【解决方案1】:

当您在 Laravel 上部署应用程序时,您必须知道应该准备好环境。首先,检查几个点,看看结果:

  1. 清除存储文件夹中的缓存(尤其是视图缓存 - 只需删除视图缓存文件 - storage/framework/views

  2. 通过工匠命令清除配置、路由和视图的缓存:

    php artisan view:clear

    php artisan route:cache
    
    php artisan config:cache
    
  3. 有时最好生成新的应用程序密钥:

    php artisan key:generate

  4. 如果这不起作用,也许你应该检查服务器配置。它的主题很长,但请反馈一下这个问题如何

干杯!

【讨论】:

  • 谢谢,但这没有用 - 我认为这是因为在 heroku 上 .env 文件已上传,并且所有内容都存储为系统变量左右。仍然没有解释为什么错误的不存在的文件夹被这样访问。
  • 没有任何区别 - tmp 文件夹不受限制,heroku 不允许我在那里执行 sudo。我什至创建了一个符号链接——但没有好处。这里根本没有任何作用..
  • 我的朋友我尽力了
  • 谢谢 - 几乎退出并转移到基本服务器
  • 我的解决方案有帮助吗?
【解决方案2】:

我遇到了同样的问题,几个小时以来,我都惊讶于这显然是一个缓存问题,但我无法修复它。 但后来我根据某人在这里给我的建议找到了答案:Heroku - View Not Found - FileFinderView InvalidArgumentException

所以我跑了:

php artisan optmize:clear

一切都恢复正常了。

【讨论】:

    【解决方案3】:

    我也遇到了同样的问题。

    在此之前,我遇到了类似的问题,即找不到会话文件。原来我必须从“文件”创建一个新的 redis 数据库和驱动程序类型。

    所以现在我的 SESSION_DRIVER 和 CACHE_DRIVER 都是 redis。我怀疑我在 Views 中遇到的这个问题是类似的。

    我在任何地方都看不到任何帮助......

    【讨论】:

      猜你喜欢
      • 2020-12-18
      • 2018-09-11
      • 2022-07-05
      • 2020-01-04
      • 2017-06-07
      • 2019-07-14
      • 2017-01-20
      • 2014-07-09
      • 2017-07-11
      相关资源
      最近更新 更多