【问题标题】:Disable all links on the site if domain is X如果域是 X,则禁用站点上的所有链接
【发布时间】:2020-02-11 06:14:18
【问题描述】:

所以我有这个问题,在 Drupal 中有 2 个网站(1 个测试和 1 个公共),位于 2 个不同的域。两者都有一些静态链接,问题是公开版现在有很多针对测试版的链接。

我尝试修改 .htaccess 中的域:

RewriteEngine On
RewriteBase /
RewriteCond %{HTTP_HOST} !new-example.com$ [NC]
RewriteRule ^(.*)$ http://new-example.com/$1 [L,R=301]

但这会在 js 文件中破坏很多东西。我知道这是一团糟,但如果我只是输入一个命令来禁用用户可以在前端看到的所有静态链接,这对我来说没关系。

有什么方法可以实现吗?谢谢!

【问题讨论】:

  • 什么是旧/新,测试/生产主机名?
  • 您发布的特定规则很可能会破坏很多东西,因为它是无效的语法。查看您告诉您的 http 服务器的错误日志文件。你忘了结束]...
  • @arkascha 对不起,我把代码放在这里的时候出错了,我现在编辑了。

标签: php .htaccess drupal hyperlink


【解决方案1】:

不要对链接使用绝对路径,而是使用根相对路径。

所以不要使用:

http://test.dev/contact

<a href = "http://test.dev/contact">Contact</a>

但只是使用

/contact

<a href = "/contact">Contact</a>

通过模板文件/数据库转储使用一些搜索/替换来修复所有现有链接。

【讨论】:

    猜你喜欢
    • 2019-06-03
    • 2019-10-04
    • 2022-01-26
    • 2012-08-14
    • 2014-03-09
    • 1970-01-01
    • 2014-12-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多