【问题标题】:Laravel - One CMS / multiple sitesLaravel - 一个 CMS / 多个站点
【发布时间】:2019-07-25 06:25:29
【问题描述】:

Laravel 文件夹结构

我用 laravel 开发了一个 CMS,我想将它用于多个网站。我的目标是在一个地方进一步开发我的 CMS,并且在旧网站中没有旧的“CMS 代码”。

问题是我不知道如何构建我的 laravel 文件夹结构。 这就是我的想法:

  • --cms
    • --website-1
    • --website-2
    • --website-3

每个网站都必须有自己的 - 公共文件夹 - .env 文件(或用于数据库和其他网站特定设置的配置) - 路线 - 资源(视图、资产) - 控制器(的) - 语言文件 - 等等。

开发环境

在开发中,我想使用网站的域(website-1.test)作为指示应该使用哪个网站文件夹。

生产环境和 Git

我使用 forge 来部署我的网站。我的想法是为 CMS 建立一个 git 存储库,为每个网站建立一个 git 存储库。在网站存储库中,我只推送网站文件夹。在 CMS 存储库中保存了整个项目,但所有网站文件夹都是 .gitignored。

所以对于生产服务器,我想到了这个文件夹结构:

  • CMS (git repo)
    • 网站(git repo)

更新网站前端时,我推送网站仓库,如果我想更新 CMS,我推送 CMS 仓库。

结论

请记住,这是我最初的想法,我知道我的想法可能根本不可能。我正在寻找针对我的情况的意见和建议。如果它可以通过其他方式或更好的方式实现,我很高兴收到这方面的建议。

提前致谢!

【问题讨论】:

标签: php laravel


【解决方案1】:

好的。 在同一个项目中是不可能的。 但是您可以为您的域名创建子目录。 它将成为 website-one.yoursitename.com。 每个子目录都有自己的文件。 这就是你完成你想要的一切所需的一切。 问候。

【讨论】:

    【解决方案2】:

    关于如何实现您所要求的目标,我有两个初步想法:

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-09-04
      • 1970-01-01
      • 1970-01-01
      • 2016-12-19
      • 1970-01-01
      • 2010-11-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多