301重定向重写不起作用

时间:2013-02-16 23:01:41

标签: apache .htaccess mod-rewrite http-status-code-301 http-redirect

我有几个重定向,例如这两个:

    #Options +FollowSymlinks
    RewriteEngine On

    #fishing report
    RewriteCond %{HTTP_HOST}  ^saintsimonsislandcharterfishing\.com$ [NC]
    RewriteCond %{QUERY_STRING}  ^$
    RewriteRule ^Fishing(?:[\ +]|%20)Report\.html$ http://www.charterfish.com/category/georgia-fishing-reports/? [R=301,NE,NC,L]

    #shark and tarpon
    RewriteCond %{HTTP_HOST}  ^saintsimonsislandcharterfishing\.com$ [NC]
    RewriteCond %{QUERY_STRING}  ^$
    RewriteRule ^shark(?:[\ +]|%20)and(?:[\ +]|%20)tarpon\.html$ http://www.charterfish.com/st-simons-shark-and-tarpon-fishing-charters/? [R=301,NE,NC,L]

然而,此重定向是将原始html页面作为请求发送到新服务器:

    #about the captain
    RewriteCond %{HTTP_HOST}  ^saintsimonsislandcharterfishing\.com$ [NC]
    RewriteCond %{QUERY_STRING}  ^$
    RewriteRule ^About(?:[\ +]|%20)The(?:[\ +]|%20)Captain\.html$ http://www.charterfish.com/captain-tj-cheek/? [R=301,NE,NC,L]

http://saintsimonsislandcharterfishing.com/About%20The%20Captain.html

重定向到:

http://www.charterfish.com/About%20The%20Captain.html

而不是

http://www.charterfish.com/captain-tj-cheek/

正则表达式看起来是正确的,我错过了什么?

0 个答案:

没有答案