【问题标题】:Laravel different environment git .env Xampp & MampLaravel 不同环境 git .env Xampp 和 Mamp
【发布时间】:2015-11-28 10:12:24
【问题描述】:

我是第一次将 github 与 laraval 结合使用。

我有 2 个本地环境:

  • a) 我使用 MAMP Pro 进行本地开发 (Mac)
  • b) 我使用 XAMPP 进行本地开发 (Windows)

我创建了一个新的存储库并在环境 a) 上推送到 github,我在设置 b) 上克隆了这个存储库并添加了一个 .env 文件来设置我的数据库。但是我有点困惑如何处理 app_key 值,我需要从我的初始环境中复制它吗?还是需要一个新的?

我的问题的第二部分是我似乎对 xampp 与 mamp pro 有问题,因为它们重写了几个 url,这意味着我的项目不会在环境 b) 上运行。我需要调整其他设置吗?如果我在环境 b) 上提交,它会再次刹车吗?

在环境 b) 上运行项目时出现错误消息

Warning: require(D:\dev.local\ADifferentDesign\bootstrap/../vendor/autoload.php): failed to open stream: No such file or directory in D:\dev.local\ADifferentDesign\bootstrap\autoload.php on line 17

Fatal error: require(): Failed opening required 'D:\dev.local\ADifferentDesign\bootstrap/../vendor/autoload.php' (include_path='.;C:\xampp\php\PEAR') in D:\dev.local\ADifferentDesign\bootstrap\autoload.p

我真的很困惑,我看到了其他类似的问题,但没有一个是我想要的。

非常感谢未来项目的好方法

进度更新 1:我用相同的密钥更新了我的 .env 文件。但是上面显示的错误仍然存​​在。我也不想每次切换环境时都更改自动加载中的路径。

【问题讨论】:

  • 是的,您需要为每个环境生成一个密钥。搬到宅基地。
  • 好的,我会生成一个单独的密钥,搬到宅基地确实回答了我的问题,如果可能的话,我宁愿不必这样做
  • 你不必搬到宅基地。
  • 我已经修改了我的 .env 文件,但我的问题第二部分中显示的错误仍然存​​在,我真的不想只为其他环境分支。

标签: php git laravel github laravel-5.1


【解决方案1】:

这取决于。如果您在两个环境之间共享任何保存加密数据的资源,例如数据库,则必须复制app_key。这是因为 Laravel 在加密用户密码或会话 ID 等内容时使用 app_key

如果您不需要共享数据库、会话等,那么您可以并且应该为每个环境生成一个新密钥。

您可以通过在站点根目录中运行此命令来生成新密钥:

php artisan key:generate

理想情况下,在运行数据库种子或其他东西之前,您应该运行此命令作为设置新环境的第一步。这是因为如果您在为数据库播种后生成新密钥,那么您在种子中创建的任何密码都将无效,您必须重新播种数据库。

【讨论】:

  • 好的,这是有道理的。我将复制密钥,因为我需要相同的资源。然而,我的问题的第二部分尚未解决,因为 mamp 和 xamp 仍然存在一些问题。
猜你喜欢
  • 2011-06-09
  • 2015-08-14
  • 1970-01-01
  • 1970-01-01
  • 2020-11-16
  • 2021-10-14
  • 2018-01-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多