我的.htaccess文件中有以下重写文件:
RewriteRule ^page_edit_(.*) page_edit.php?page=$1
RewriteRule ^page page.php
例如,如果我转到/ page_edit_12,我会看到page.php的内容。但是我想看一下page_edit.php?page = 12。
使用以下规则,它会提供正确的参数。因此,如果我将此规则用于/ page_edit_12,我会看到page.php的内容?edit = true& page = 12
RewriteRule ^page_edit_(.*) page.php?edit=true&page=$1
RewriteRule ^page page.php
为什么我无法破解网址以便它可以访问另一个文件,如果找到与另一个URl的匹配(/ page in / page_edit_12)?
答案 0 :(得分:3)
第二条规则的正则表达式匹配" /page_edit.php"并将其重写为/page.php,在模式的末尾添加$以限制它仅匹配/页面。
RewriteRule ^page_edit_(.*) page_edit.php?page=$1 [NC,L]
RewriteRule ^page/?$ page.php [L]
答案 1 :(得分:1)
你应该将[L] - Last - Flag添加到你的第一行,这样就会在.htacces中结束这个过程:
RewriteRule ^page_edit_(.*) page_edit.php?page=$1 [L]