.htaccess在子文件夹中未按预期工作

.htaccess在子文件夹中未按预期工作,.htaccess,.htaccess,我将此重写规则放置在/dashboard/.htaccess[dashboard实际上是一个文件夹]: RewriteRule ^([^/]*)$ index.php?mode=$1 [L] 我的结构是index.php?mode=support,即使,$\u服务器['QUERY\u STRING']输出以下内容: mode=index.php Example: site.com/dashboard/index.php?mode=support should be site.com/dash

我将此重写规则放置在/dashboard/.htaccess[dashboard实际上是一个文件夹]:

RewriteRule ^([^/]*)$ index.php?mode=$1 [L]
我的结构是index.php?mode=support,即使,$\u服务器['QUERY\u STRING']输出以下内容:

mode=index.php

Example: site.com/dashboard/index.php?mode=support should be site.com/dashboard/support

那么,如何让它解析param值,而不是文件本身。

当实际路径为

/dashboard/support
要得到你真正想要的文件夹,你需要一个这样的基础

RewriteBase /dashboard/

如果将其置于规则之上,那么您的重定向应该是ok的

在对正则表达式进行更多研究的同时设法解决它

RewriteRule ^([a-z]+)$ index.php?mode=$1 [L,QSA]

这解决了我的问题,首选加号而不是星号,因为它告诉引擎重复它零次或多次。(当我在index.php上时,查询字符串根据需要是空的)

据我所知。htaccess应该在root中folder@Ani.htaccess可以在任何文件夹中。我将其置于规则之上,结果相同。我使用generateit.net/mod-rewrite/从site.com/dashboard/index.php?mode=news到site.com/dashboard/news获取重写规则,但它仍然具有相同的效果。查询字符串$1仍然获取'index.php'作为值。