管理两种不同的环境 Laravel

Managing Two Different environments Laravel

你好,我有两种不同的环境,一种是生产环境,一种是开发环境,我使用 laravel 和 git 作为版本控制,它们之间的主要问题是文件路径,例如

在我的开发环境中,我可以访问存储在 /public/categories/icons/imagename 中的图像 通过这样做

  <img src="{{$current_category->icon}}">

我本地数据库中的图标路径是 /category/icon/1592520430.png 所以你可以看到我不必在它前面放 public 所以 laravel 会 / public/ 然后它会查找我的路径 /category/...

但在我的生产环境中

如果我想访问图像,我会这样做

  <img src="{{$current_category->icon}}">

但这里的区别在于,这将输出到 /public/category/icon/1592520430.png 正如你在我的开发中看到的那样,路径可以在没有 public 字的情况下访问,但在我的生产 我对我的控制器进行了一些更改,将 public 这个词放在路径之前,然后我可以访问它,因为它已经具有 public

这在 git 中引起了一些问题,因为开发环境与生产环境不同,所以每当我遇到问题时,我应该去我的开发并在那里修复它并在知道问题后我去生产并在那里修复它,然后将生产推送到 master

我想到了一些选择,但我不知道哪个是最正确的,或者是否有其他方法可以解决这个问题

1 - 让我的开发环境类似于生产环境

2 - 使生产类似于开发

但也许他们都错了所以请告诉我我应该如何处理这个问题并记住我在生产中的项目与我在开发中的项目完全一样(我的意思是项目结构和文件位置)

要访问文件夹 'public/categories/icons/' 中的图像,我们可以使用

public_path('categories/icons/');

此函数不能用于获取文件夹“/category/icon/1592520430.png”中的图像

推荐:

请在本地和生产中使用相同的代码和文件夹。

使用 APP_ENV=DEVELOPAPP_ENV=PRODUCTION

设置 ENV 文件

在任何需要的地方,调用 env() 帮助程序或 App::environment() 函数来访问它。