网址的htaccess重写规则不起作用

时间:2017-03-02 13:39:27

标签: php .htaccess mod-rewrite

我正在尝试访问website.com/cms或website.com/cms/,请访问website.com/cms/administrator/

在其他网站上,这种方法运行正常,但由于某种原因,我无法在此网站上运行。

我的htaccess:

DirectoryIndex
RewriteEngine  on

#Indexes uitzetten
Options -Indexes

#Cross site access toestaan
Header set Access-Control-Allow-Origin "*"
Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type"

#CMS rewrite
RewriteRule ^cms/$ /cms/administrator [L]

#Website name

DirectoryIndex index.php

RewriteRule         ^projecten/(.*).html projecten.php?alias=$1 [L]
RewriteRule         ^project/(.*).html project.php?alias=$1 [L]
RewriteRule         ^informatie/(.*).html over-ons.php?alias=$1 [L]
RewriteRule         ^(.*).html dienst.php?alias=$1 [L]

并且规则不起作用:

RewriteRule ^cms/$ /cms/administrator [L]

我试图清除缓存,但无论我尝试什么,它仍然只是/ cms而不是/ cms / administrator。我错过了什么吗?

1 个答案:

答案 0 :(得分:0)

它重写了URL,因此对“cms”的请求是对“cms / administrator”的请求。如果要重定向,请添加R标记301(permament)或302(临时)属性。

RewriteRule ^cms/$ /cms/administrator [L,R=301]

Read here (flags section)