.htaccess重定向替换一个不起作用的单词

时间:2012-06-07 11:50:24

标签: apache .htaccess

在我的网址中,我用“landelijke-deals”取代了“national”这个词

例如来自: http://allthedeals.nl/deals/national/reizen-vakantie

要: http://allthedeals.nl/deals/landelijke-deals/reizen-vakantie

我正在使用它:

RewriteRule ^national/(.*) /landelijke-deals/$1 [R=301,L]

重定向,但由于某种原因,它无法正常工作,我没有看到什么?

更新:这是我当前的htacces文件

Options +FollowSymLinks
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.allthedeals\.nl$ [NC]
RewriteRule ^(.*)$ http://allthedeals.nl/$1 [R=301,L]
#
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^deals([-a-zA-Z\/]+)?$ deals.php?vars=$1 [L,QSA]
#
RewriteRule ^deal/([-_a-zA-Z0-9]+)/([0-9]+)$ CustomDealDetail.php?dealId=$2&seo=$1 [L,QSA]
RewriteRule ^deal/([0-9]+)/([-_a-zA-Z0-9]+)$ old_id_redirect.php?old_id=$1&seo=$2 [L,QSA]
RewriteRule ^aggdeal/([0-9]+)/(.*)$ dealdetails.php?dealId=$1 [L,QSA]
RewriteRule ^deal-aanbieders$ deal-aanbieders.php [L,QSA]
RewriteRule ^deals/national/(.*) /deals/landelijke-deals/$1 [R,L]
#RewriteRule ^index\.htm$ index.php [NC,R]

2 个答案:

答案 0 :(得分:0)

你的RewriteRule是错误的。请改用以下重写规则:

RewriteRule ^/deals/national/(.*)$ /deals/landelijke-deals/$1 [R=301,L]

答案 1 :(得分:0)

这是您需要的规则:

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^(deals)/national/(.+)$ $1/landelijke-deals/$2 [R=301,L.NC]