【问题标题】:Redirect all images to an external server using .htaccess?使用 .htaccess 将所有图像重定向到外部服务器?
【发布时间】:2013-09-10 16:17:35
【问题描述】:

我正在尝试将本地主机上的静态图像文件重定向到我的外部开发服务器。 所有图像都存储在一个目录中。在 html 中,它们指向:loc-site.example.com/sites/dev.site.com/images。我想将他们重定向到http://[ip_address]/sites/dev.site.com/images。我做了一些研究并尝试了以下方法:

  RewriteRule loc-site.example.com/sites/dev.site.com/image(.*)$ http//:111.222.333.333/sites/dev.site.com/files/images/$1

但这仍然不起作用。

另外,我如何查看重写后的 url?如何测试这些重写规则?

【问题讨论】:

    标签: apache .htaccess redirect


    【解决方案1】:

    您不希望您的主机名作为重写规则中模式的一部分,只有请求 URI 被传入以进行匹配。你想要这样的东西:

    RewriteCond %{HTTP_HOST} ^loc-site\.example\.com$ [NC]
    RewriteRUle ^sites/dev.site.com/image(.*)$ http://111.222.333.333/sites/dev.site.com/files/images/$1
    

    [L,R=301]

    如果您不想要永久重定向,可以删除标志的 =301 部分。

    【讨论】:

    • 我仍然有问题。如何调试重定向?
    • @aresnelupin 你被重定向到哪里,“问题”是什么?
    • 谢谢。它只是不工作。当我访问应该重定向的页面时没有重定向。经过几次测试并使用 htaccess 在线测试仪,我做到了,一切正常RewriteCond %{HTTP_HOST} ^loc-site\.example\.com$ [NC] RewriteRule ^sites/blala/(.*\.(gif|jpg|png))$ http://11.1.1.1.1./sites/blabla/$1[QSA,L]。我还将它放在我的 .htaccess 顶部,这样它就不会与其他重写规则冲突。
    【解决方案2】:

    经过几次尝试,这对我有用

    RewriteCond %{HTTP_HOST} ^loc-site\.example\.com$ [NC] RewriteRule ^sites/blala/(.*\.(gif|jpg|png))$ http://11.1.1.1.1./sites/blabla/$1[QSA,L]
    希望这对其他人有帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-03-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-26
      • 2015-09-29
      • 2015-01-23
      相关资源
      最近更新 更多