我的htaccess重写不起作用

时间:2012-09-03 07:26:08

标签: apache .htaccess mod-rewrite

我有像这样的文件夹结构

/localhost/parent/

我有一个.htaccess居住在

/localhost/parent/

我想重写从/localhost/parent/WebContent//localhost/parent/

的所有内容

这是我的代码

RewriteEngine on
RewriteRule ^$ WebContent/$1

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^WebContent/
RewriteRule ^(.*)$ WebContent/$1

由于某种原因,前两行工作正常,但其余部分不起作用。所以我只能重定向主页。

更新

RewriteBase /parent/

RewriteEngine on
RewriteRule ^$ WebContent/$1

#RewriteCond %{REQUEST_URI} !WebContent
RewriteRule (.*) /parent/WebContent/$1 [R=301,L,QSA]

进入无限循环。我现在只需要避开那个循环

2 个答案:

答案 0 :(得分:0)

尝试切换行的顺序以便

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d

先于其他一切。

你也可以尝试添加这一行:

RewriteBase /WebContent/

答案 1 :(得分:0)

我用过这个

RewriteEngine on
RewriteRule ^$ /parent/WebContent/$1

RewriteCond %{REQUEST_URI} !WebContent
RewriteRule ^(.*)$ /parent/WebContent/$1