Php 对于以某些字符开头的URL,需要mod_重写异常

Php 对于以某些字符开头的URL,需要mod_重写异常,php,regex,apache,.htaccess,mod-rewrite,Php,Regex,Apache,.htaccess,Mod Rewrite,我对mod_重写不太了解,但似乎找不到这个问题的答案。我正在开发一个简单的应用程序,并通过main index.php页面发送所有URL(少数例外)。例如,mysite.com/test转到index.php,然后在php中确定url并加载相应的页面 我的问题是,我需要将电子邮件验证或其他潜在的未来例外排除在这条规则之外。电子邮件验证链接的一个示例是:。。。。。等等 所以。。。有没有办法从以某些字符开头的重写规则中排除url。在这种情况下,“php-”就可以做到这一点 我当前的重写条件是: Re

我对mod_重写不太了解,但似乎找不到这个问题的答案。我正在开发一个简单的应用程序,并通过main index.php页面发送所有URL(少数例外)。例如,mysite.com/test转到index.php,然后在php中确定url并加载相应的页面

我的问题是,我需要将电子邮件验证或其他潜在的未来例外排除在这条规则之外。电子邮件验证链接的一个示例是:。。。。。等等

所以。。。有没有办法从以某些字符开头的重写规则中排除url。在这种情况下,“php-”就可以做到这一点

我当前的重写条件是:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(index\.php|&|register\.php|php|
css|images|javascript|robots\.txt|favicon\.ico)
RewriteRule ^(.*)$ index.php?/$1 [L]
尝试使用查询字符串

RewriteCond %{QUERY_STRING}     ^query=(.*)$    [NC]

您可以使用
RewriteCond%{REQUEST\u URI}
排除特定URI,如下所示:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !^/php- [NC]
RewriteCond $1 !^(index\.php|register\.php|php|css|images|javascript|robots\.txt|favicon\.ico)
RewriteRule ^(.*)$ index.php?/$1 [L,QSA]

此字符串使激活链接工作,但是会中断通过main index.php页面发送mysite.com/login或其他任何内容。在对它进行更多的研究之后,如果有一种方法只允许php变量,我可以修改我现有的代码。