不重定向基础文件夹

时间:2015-10-11 13:14:05

标签: .htaccess mod-rewrite

如果有一个mod写入工作正常,但我希望不适用到基本文件夹中的某个文件(" somefile.php") / strong>即可。所有其他文件(特别是" somefile.php"子文件夹中的文件)应受规则影响。

我尝试在RewriteRule之前为此案例添加RewriteCond,但我无法弄清楚正确的语法。我最后一次错误的尝试是:

RewriteCond %{REQUEST_URI} !(^$)/somefile.php

我认为必须是这样的。 您能否更正此语法?

修改

这是我的重写mod(根据第一个答案修改的RewriteCond)的简化版本:

ErrorDocument 404 /page404.php
Options -Indexes
DirectoryIndex index.php 
RewriteEngine on
RewriteCond %{REQUEST_URI} !^(/|/index\.php)$
RewriteRule ^(.+)$ main.php?path=$1 [L,QSA]

我的基本文件夹是:// localhost / somefolder_but_i_dont_know_its_name /

编辑2:

我找到了一种解决方法(它没有回答我的语法问题,但似乎解决了潜在的问题):

ErrorDocument 404 /page404.php
Options -Indexes
DirectoryIndex index.php 
RewriteEngine on
RewriteCond %{REQUEST_URI} (.*)somefile\.php
RewriteRule ^([^/]+)/?$ - [L,QSA]
RewriteRule ^(.+)$ main.php?path=$1 [L,QSA]

0 个答案:

没有答案