首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >7-基于环境的动态更改链接

7-基于环境的动态更改链接
EN

Drupal用户
提问于 2017-04-12 20:36:41
回答 2查看 182关注 0票数 0

我正在使用一个Drupal站点,它是其他几个软件的中心枢纽。Drupal站点和其他软件都有自己的开发、测试和生产环境。这些环境中的每一个都有自己的url。

我想要做的是通过设置某种类型的变量/令牌来根据当前的环境更改这些urls。例如:

  • 如果站点在dev中,它会链接到该软件的所有其他dev版本。例如,dev-drpal.website.com链接到dev-Sofare1.website.com和dev-Sofare2.website.com。
  • 如果代码基移动到测试,有一个文件(例如,template.php)文件要么不需要更改,要么需要更改一次才能更改所有链接。

有超过几十个这样的外部链接软件片段,它们经常在内容中链接,但也有菜单项,块和一些视图。目前,我们必须做一个查找和替换,手动更改这些链接在一个时间。我试图找出是否有更好的方法,也许通过模板变量或令牌。有什么想法吗?理想情况下,这个解决方案不会存储在db中,但我是灵活的。

我在寻找关于最佳方法的建议。

EN

回答 2

Drupal用户

发布于 2017-04-12 21:28:48

我不认为我会在德鲁帕尔尝试这么做。我将使用Apache/mod_rewrite设置一个小型代理服务器。您可以根据源url重写您的url。在Apache文档站点上有一些良好的入门信息。mod_proxy上也有足够的内容,但我认为mod_rewrite对您的用例来说已经足够了。

票数 0
EN

Drupal用户

发布于 2017-04-13 00:10:34

充其量,您应该在每个环境中设置$base_url,并在任何地方使用相对链接。像病理学这样的模块在这里也会有所帮助。你最不想要的是使用那些保存到数据库中的域的链接--通过相对链接,你将是黄金。

您可以通过几种方法从settings.php确定环境,无论是ENV变量还是服务器IP。您还可以为每个站点提供一个文件夹,以利用多个settings.php文件。Drupal将使用它在Site/下找到的域文件夹。

您也可能对查看钩子_url_出站_更改感兴趣。

票数 0
EN
页面原文内容由Drupal提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://drupal.stackexchange.com/questions/233934

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档