htaccess重写相同的页面名称冲突

我的htaccess文件有以下两行

RewriteRule ^payment payment.php RewriteRule ^payment-confirmed payment-confirmed.php 

当试图访问payment-confirmed.php它只是去payment.php(付款) – 我猜这是因为它只读取第一个字,并认为它已经find的位置。

有没有一种方法可以configuration我的htaccess文件,以避免这种情况?

三种不同的方式:

  1. 使用别名而不是重写:
    别名付款payment.php
    别名付款确认payment-confirmed.php
  1. 包含$ ,表示“string的结尾”:
     RewriteRule ^ payment $ payment.php
     RewriteRule ^支付确认$ payment-confirmed.php
  1. 移动线条,以便首先检查最具体的线条:
     RewriteRule ^支付确认$ payment-confirmed.php
     RewriteRule ^ payment $ payment.php