【问题标题】:Load another domain images to my domain using htaccess?使用 htaccess 将另一个域图像加载到我的域?
【发布时间】:2015-04-24 10:37:25
【问题描述】:

我有 2 个域和 2 个服务器 example.comexample2.com。例如:example.com 是我的主要域名。我将我的网站图片上传到 example2.com

我当前的图片路径http://example.com/data/photos/sample.jpg.
但我所有的图片都在http://example2.com/data/photos/sample.jpg

所以我创建了 htaccess 301 重定向

RewriteEngine on
RewriteBase /
RewriteRule ^data/photos/(.*)$ http://example2.com/data/photos/$1 [R=301]

但它不适合我。因为我在我的所有页面中都调用了完整的 URL。所以任何一个建议都对我很有帮助

更新了我的旧 Htaccess 文件

<IfModule mod_rewrite.c>

RewriteEngine On

RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L]
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
RewriteEngine On
RewriteBase /
RewriteRule ^data/photos/(.*)$ http://example2/data/photos/$1 [R=301]
</IfModule>

【问题讨论】:

  • 我认为你有一个简单的错字。你需要照片
  • @Ravi Thapliyal ya 我在 example2.com 域中有照片
  • 它不工作是不够的。你得到什么确切的问题?是404还是有照片的其他东西?为什么不将您的图片链接更新为http://example2/data/photos/...
  • @anubhava 是的,很好的查找和替换。更不用说页面加载时间也会大大改善。
  • @NathanSrivi 您不会看到页面源中的 url 更改。只是浏览器会从重定向的 URL 中获取图像。

标签: php apache .htaccess mod-rewrite redirect


【解决方案1】:

您需要重新排序规则。您的最终 htaccess 应该类似于

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /

    RewriteRule ^(data/photos/.*)$ http://example2.com/$1 [R=301,NC,L]

    RewriteCond %{HTTP_HOST} ^example\.com$ [NC]
    RewriteRule ^(.*)$ http://www.example.com/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L]

    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization},L]
</IfModule>

【讨论】:

  • 它也不适合我。怎么了。如果我删除整个 htaccess 代码意味着网站无法正常工作。请帮帮我
  • 能否提供站点地址以便我调试请求?
  • 在您的主页上,没有任何链接从数据/照片中加载图像。它们都来自主题文件夹。我需要一个您遇到问题的链接,以便为您提供帮助。
  • 是的,重定向在我的浏览器上运行良好。我的地址栏中的 URL 更改为 img.picture.lk。也许您只需要删除缓存或尝试使用其他浏览器。
  • 它在后台工作。谢谢@Ravi Thapliyal。非常感谢h
【解决方案2】:

用这个改变它

RedirectMatch 301 ^/data/photo/ http://example2.com/data/photo/

为整个目录创建 301。

【讨论】:

  • 由于匹配是静态的,你也可以使用Redirect 301 /data/photo http://example2.com/data/photo
  • 如果图片是从照片目录加载的,我需要重定向到外部域路径
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-05-04
  • 2017-05-18
  • 2011-06-29
  • 1970-01-01
  • 1970-01-01
  • 2017-03-07
  • 2010-10-14
相关资源
最近更新 更多