2016-06-09 73 views
-1

我想自动将http请求重定向至news/images../images将一个目录重写为另一个.htaccess

使用.htaccess可以吗?

事情是:请求www.site.tld/news/images ...应该去www.site.tld/images ...

我曾尝试:

RewriteEngine On 
... 
... 
RewriteRule (.*)news/images(.*) ../images [R=301,L] 

不工作。

我确保apache启用mod_rewrite.c

+2

在StackOverflow上,这里只有大约53974783027个答案。这些帮助你没有一个? _为什么不_?为什么53974783028突然帮忙?你在这里问的与你有什么不同?请阅读右侧显示的一些“相关”条目。我相信你会在那里找到你的问题。 – arkascha

+0

不工作是什么意思?你会得到什么错误? – anubhava

回答

0

要为/news/images/所有请求重定向到/images/images后拍摄的部分,当它的作品,因为它应该,你可以用R=301取代R使用它在RewriteRule

RewriteRule ^news/images(.*)$ /images$1 [R,L] 

。千万不要用R=301进行测试。

0

您可以使用:

RewriteRule ^www\.site\.tld/news/images$ /www.site.tld/images?&%{QUERY_STRING} 

,或者您也可以使用:

RewriteCond %{HTTP_HOST} ^www.site.tld/news/images$ [NC] 
RewriteRule ^(.*)$ http://www.site.tld/images/$1 [R=301,L] 

但作为@arkascha称,请先做一些研究,有很多答案,这种问题! :)无论哪种方式,我希望这有助于。

+0

'HTTP_HOST'只是主机名,没有路径信息。而'RewriteRule'模式只是路径信息,没有主机名。有关详细信息,请参见[Apache Module mod_rewrite](http://httpd.apache.org/docs/current/mod/mod_rewrite.html)。 –

+0

谢谢@OlafDietsche,我会看看! :) – Lag

相关问题