htaccess mod重写文件夹隐藏

时间:2013-04-10 12:13:05

标签: apache .htaccess mod-rewrite directory

我一直在努力使用我的htaccess文件一段时间..我有以下网址:

http://www.mysite.com/folder1/system/folder2/file.php

我设法隐藏了.php扩展名,但现在我试图隐藏/ system /。 我现在有以下内容: (Mod Rewrite Hide Folder

RewriteEngine on 
RewriteRule ^/(.*)$   /system/$1

然而这无效。

感谢。

编辑:

从测试所有解决方案都没有工作,我有一种强烈的感觉,我的.htaccess在错误的目录中。目前.htaccess位于folder1目录中..不在根目录中,不在系统中,不在folder2目录中..

5 个答案:

答案 0 :(得分:1)

试试这个htaccess代码

RewriteEngine on
RewriteBase /folder1
RewriteRule ^folder2/(.*).php$ system/folder2/$1.php [L]

答案 1 :(得分:0)

试试这个

RewriteEngine on

RewriteRule ^/([^/]+)/(.*)$   $1/system/$2 [QSA,L]

编辑:

RewriteCond %{REQUEST_URI} ^/folder1/system/(.*)$ 
RewriteRule ^ - [S=1,L]
RewriteCond %{REQUEST_URI} ^/folder1/(.*)$ 
RewriteRule ^ /folder1/system/%1 

答案 2 :(得分:0)

用以下内容替换您的规则:

RewriteCond %{REQUEST_URI} !/system/ [NC]
RewriteRule ^([^/]+)/(.*)$ /$1/system/$2 [L]

答案 3 :(得分:0)

RewriteEngine On
RewriteRule ^(.*)$ %{REQUEST_URI}/system/$1 [R,NC,L]

试试这个。

答案 4 :(得分:0)

请记住,您需要将.htaccess - 文件放在folder1目录中!我想你可能把它放在你网站的根目录中。

另外,请注意不要使用前导/.

试试这个:

RewriteEngine on
RewriteRule ^/(.*) system/$1