重写特定的WordPress使用.htaccess上传文件夹

时间:2012-12-21 06:07:40

标签: wordpress .htaccess redirect upload rewrite

我需要重定向一些WordPress上传文件夹,让别人独自一人。例如,我需要将http://www.mysite.com/wp-content/uploads/2009/08/image.jpg重定向到http://www.mysite.com/assets/2009/08/image.jpg

我试过了:

RedirectMatch 301 http://www.mysite.com/assets/2009/08/(.*)$ http://www.mysite.com/wp-content/uploads/2009/08/$1

我正在使用RedirectMatch进行其他重定向,但它们正在运行,因此启用了RedirectMatch

我不确定我错过了什么。

感谢您的帮助。

1 个答案:

答案 0 :(得分:2)

协议和主机名不会进入RedirectMatch指令中的匹配项。它只与URI匹配(主机名后的所有内容,例如/wp-content/uploads/2009/08/image.jpg)。此外,由于您要重定向到同一网站,因此目标中不需要http://www.mysite.com

RedirectMatch 301 ^/assets/2009/08/(.*)$ /wp-content/uploads/2009/08/$1

但你问的问题是:

  

我需要将http://www.mysite.com/wp-content/uploads/2009/08/image.jpg重定向到http://www.mysite.com/assets/2009/08/image.jpg

如果你想 wp-content 资产,那么这意味着你有两件事情倒退了。你需要交换它们:

RedirectMatch 301 ^/wp-content/uploads/2009/08/(.*)$ /assets/2009/08/$1

或者你可以更加一般:

RedirectMatch 301 ^/wp-content/uploads/([0-9]{4})/([0-9]{2})/(.*)$ /assets/$1/$2/$3