.htaccess htaccess中的URL重写和301重定向不工作

.htaccess htaccess中的URL重写和301重定向不工作,.htaccess,url-rewriting,.htaccess,Url Rewriting,我想使现有的网站搜索引擎优化友好的网址。我几乎有和重写所有链接。但当涉及到301时,将旧的URL重定向到新的URL,我被卡住了。下面是我是如何做到这一点的 RewriteEngine On RewriteRule ^video_gallery video_gallery.php Redirect /video_gallery.php http://site.com/video_gallery 如上所示,我已经将video_gallary.php重写为video_gallary,现在我想将所有请

我想使现有的网站搜索引擎优化友好的网址。我几乎有和重写所有链接。但当涉及到301时,将旧的URL重定向到新的URL,我被卡住了。下面是我是如何做到这一点的

RewriteEngine On
RewriteRule ^video_gallery video_gallery.php
Redirect /video_gallery.php http://site.com/video_gallery
如上所示,我已经将video_gallary.php重写为video_gallary,现在我想将所有请求重定向到 但它现在可以像上面一样正常工作了。请帮个小忙


谢谢

这将导致重定向循环。您需要匹配
%{the_REQUEST}
变量,该变量是实际请求,而不是URI(在处理过程中会发生更改)。以你的例子来说:

RewriteEngine On

RewriteRule ^video_gallery video_gallery.php

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /video_gallery\.php
RewriteRule ^ /video_gallery [L,R=301]

这将导致重定向循环。您需要匹配
%{the_REQUEST}
变量,该变量是实际请求,而不是URI(在处理过程中会发生更改)。以你的例子来说:

RewriteEngine On

RewriteRule ^video_gallery video_gallery.php

RewriteCond %{THE_REQUEST} ^[A-Z]{3,9}\ /video_gallery\.php
RewriteRule ^ /video_gallery [L,R=301]