2014-01-30 57 views
0

我有这个联控规则奇怪的现象:EDITED

RewriteRule ^(.*)$ $1.php [NC]// the problem is caused by this. How can I keep it without having this result? 
RewriteRule ^user/(.*)$ user.php?user=$1 [NC]  
RewriteRule ^ride/(.+)/$ ride.php?myRideId=$1 [NC,L] 

当我这样做:

www.example.com/ride/123 

一切正常,我的浏览器中正确显示但如果我尝试使用:

$rideId = $_GET['myRideId']; 
    echo $rideId; 

结果是:

123.php/123 

我不明白为什么。重写规则中有任何错误?

+0

print_r($ _ GET);给你结果? –

+0

@MihirChhatre阵列([myRideId] => 123.php/123) – mat

回答

0

您是否尝试过这样做呢?

RewriteRule ^ride/(.+)/?$ ride.php?myRideId=$1 [NC,L] 

试试这个。你也需要写你的URL为:

www.example.com/ride/123/ 
+0

如果我这样做:www.example /骑/ 123/I 123获得/ .PHP/123 /否则我仍然获得与www.example上述结果/骑/ 123(也与新规则) – mat

+0

如何: 重写规则^骑/(.+)/$ ride.php myRideId = $ 1 [NC,L] –

+0

对不起,我应该已经发布的所有重写规则?这将有助于找到解决方案。问题是RewriteRule ^(。*)$ $ 1.php [NC] 这是所有其他规则之前。我将编辑我的问题。有没有办法保持这个规则而没有这个结果? – mat