.htaccess rewrite输出不需要的内容。我想?

.htaccess rewrite输出不需要的内容。我想?,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,我正在尝试使用.htaccess重写URL。我运行的是Apache 2.2.15版 .htaccess的内容: RewriteEngine on RewriteRule cars/(.*) cars/member_page.php?user=$1 RewriteRule cars/(.*)/ cars/member_page.php?user=$1 member_page.php的内容: <?php echo $_GET[user]; ?> 浏览器输出字符串“member_pag

我正在尝试使用.htaccess重写URL。我运行的是Apache 2.2.15版

.htaccess的内容:

RewriteEngine on
RewriteRule cars/(.*) cars/member_page.php?user=$1
RewriteRule cars/(.*)/ cars/member_page.php?user=$1
member_page.php的内容:

<?php
echo $_GET[user];
?>
浏览器输出字符串“member_page.php”而不是“user1”


如何让它从原始URL输出(.*)的内容。

首先,它的
$\u GET['user']
,而不是
$\u GET[user]
(注意引号)。关于您的mod_重写规则:

RewriteEngine On
RewriteRule cars/(.*) cars/member_page.php?user=$1 [L]
RewriteRule cars/(.*)/ cars/member_page.php?user=$1 [L]

L表示应用的最后一条规则。

此格式的问题:

RewriteEngine on
RewriteRule cars/(.*) cars/member_page.php?user=$1 [L]
RewriteRule cars/(.*)/ cars/member_page.php?user=$1 [L]
原来我是在把cars/whatever改写成cars/member_page.php。这就产生了重写到正在进行重写的同一目录的问题

所以

被改写为

cars/member_page.php/user=member_page.php
它被重写了两次,使用第二次重写的内容作为最终信息。解决方案是将member_page.php移动到另一个目录

RewriteEngine on
RewriteRule cars/(.*) memberscars/member_page.php?user=$1 [L]
RewriteRule cars/(.*)/ memberscars/member_page.php?user=$1 [L]

但302重定向可能不是他想要的,是吗?这个[L]不是已经做了吗?
cars/member_page.php/user=member_page.php
RewriteEngine on
RewriteRule cars/(.*) memberscars/member_page.php?user=$1 [L]
RewriteRule cars/(.*)/ memberscars/member_page.php?user=$1 [L]