Apache .htaccess文件中的简单多产品链接不起作用

Apache .htaccess文件中的简单多产品链接不起作用,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,无法访问product2.php或product3.php文件 请帮助…您所有的重写规则正则表达式都是相同的,因此它只会在第一次匹配时将URL转换为product.php?pid=$1&rewrite=1&%{QUERY\u STRING}[L,QSA,NC],然后不执行其他操作(L标志指定它将不匹配该运行的任何其他规则,然后在它将URL重写为product.php后,product.php将不匹配下一次运行的任何其他规则) 此外,如果传递QSA标志,则无需添加和%{QUERY_STRING},

无法访问product2.php或product3.php文件


请帮助…

您所有的
重写规则
正则表达式都是相同的,因此它只会在第一次匹配时将URL转换为
product.php?pid=$1&rewrite=1&%{QUERY\u STRING}[L,QSA,NC]
,然后不执行其他操作(
L
标志指定它将不匹配该运行的任何其他规则,然后在它将URL重写为
product.php
后,
product.php
将不匹配下一次运行的任何其他规则)

此外,如果传递
QSA
标志,则无需添加
和%{QUERY_STRING}
,因为这会自动将查询字符串附加到从
重写规则
获得的修改后的查询字符串


我知道您希望它访问其他两个页面,但您需要描述每个特定文件应映射哪些输入URL,以便任何人能够进一步帮助您。

您能在每个代码行之前添加四个空格吗?它会将其格式化为代码块,以便其他人阅读。
RewriteCond %{REQUEST_FILENAME} !-f

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([a-zA-Z0-9_-]+)\.html$ product.php?pid=$1&rewrite=1&%{QUERY_STRING} [L,QSA,NC]

RewriteCond %{REQUEST_FILENAME} !-f 

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([a-zA-Z0-9_-]+)\.html$ product2.php?cid=$1&rewrite=1&%{QUERY_STRING} [L,QSA,NC]

RewriteCond %{REQUEST_FILENAME} !-f 

RewriteCond %{REQUEST_FILENAME} !-d

RewriteRule ^([a-zA-Z0-9_-]+)\.html$ product3.php?bid=$1&rewrite=1&%{QUERY_STRING} [L,QSA,NC]