2016-03-01 107 views
0

我有目录my-site.com/m/它包含这么多的子文件夹,所以我想内部重定向的子文件夹my-site.com/m/req="rest -path-目录的”htaccess不工作的目录重定向

前 my-site.com/m/article/pc到my-site.com/m/?req=article/pc

为此,我使用下面的代码但有些事情是错的,它不适合我。

我的.htaccess文件是:

RewriteEngine On 
RewriteRule ^/m/([A-Za-z0-9\/]*)/?$ http://www.localhost/m/index.php?req=$1 [L]  
+0

从RewritePattern删除前导斜线。 – starkeen

+0

谢谢,但它不是案件;我已经尝试了这么多的组合可能哪一个你建议,但它不工作 –

回答

0

尝试

RewriteEngine On 
RewriteRule ^/m/([A-Za-z0-9\/]*)$ http://www.localhost/m/index.php?req=$1 [L] 

我觉得/?因为所有/字符都在您的([A-Za-z0-9\/]*)表达式中捕获,所以您的捕获组括号之外永远不会匹配。

+0

你是对的\?从来没有匹配,我认为它不影响模式其可选 –

+0

我也尝试没有\?但仍然工作 –

0

对于内部重定向,你需要从重写目标删除主机名和方案

尝试:

RewriteEngine On 
RewriteRule ^m/([A-Za-z0-9\/]*)/?$ /m/index.php?req=$1 [NC,QSA,L]  
+0

谢谢你,但我也尝试,因为你建议它甚至不是外部重定向 –

+0

它是.htaccess文件和模块是在配置文件 –