如何正确设置图像的Apache重定向

时间:2016-04-08 14:07:26

标签: php wordpress apache .htaccess redirect

我已经从我的Windows服务器到其他地方托管的博客设置了反向代理。除了站点地图外,一切都很好。

博客位于子域名中:http://blog.example.com 代理域名为https://example.com/blog

当我使用Wordpress时,我选择了Yoast SEO,但是尽管ARR正在进行重新路由,Google工具仍抱怨它无法访问的图像 - 在原始域上。这在某种意义上是正确的,因为我在子域上添加了第二个robots.txt,以停止重复内容,但它没有意义,因为应用程序请求路由应该隐藏子域。但是,我们都知道Google会做它想做的事情。

我找到了一些我已添加到htaccess文件中的代码:

# WordPress SEO - XML Sitemap Rewrite Fix - for reverse proxy
RewriteEngine On
RewriteBase /
RewriteRule ^sitemap_index.xml$ https://example.com/blog/index.php?sitemap=1 [L]
RewriteRule ^([^/]+?)-sitemap([0-9]+)?.xml$ https://example.com/blog/index.php?sitemap=$1&sitemap_n=$2 [L]
# END WordPress SEO - XML Sitemap Rewrite Fix

我不确定它是否正在做任何事情因为图像问题仍然存在,所以我的下一步是尝试将图像重定向到新的域结构......这就是问题所在 - 我绝对知道没有关于Apache的东西,绝对不是apache重写。

我需要做的是将uploads文件夹中的任何内容重定向到新的绝对路径

从,/wp-content/uploads/myimage.jpghttps://example.com/wp-content/uploads/myimage.jpg

任何人都可以帮助完成最后一块拼图吗?

提前致谢。

1 个答案:

答案 0 :(得分:1)

您可以在.htaccess中使用以下内容:

RewriteCond %{REQUEST_URI} ^/wp-content/uploads/
RewriteRule ^(.*)\.(jpe?g|gif|png|bmp)$ https://example.com/wp-content/uploads/$1\.$2 [NC,L,R=302]