Apache .htaccess文件中的简单多产品链接不起作用
无法访问product2.php或product3.php文件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},
请帮助…您所有的
重写规则
正则表达式都是相同的,因此它只会在第一次匹配时将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]