0

この書き直しが機能しない理由について頭を悩ませてきましたが、その理由がわからないようです。

RewriteRule ^products/productA$ /products/product.php?ProductRef=productA\d{2} [L]

上記の書き換えは、製品の下 2 桁が異なるようにするために実装しようとしているものです。これは年が変わるためです。例: productA13。以下のコードは完全に機能しますが、毎年すべての書き換えで年を変更したくありません。

RewriteRule ^products/productA$ /products/product.php?ProductRef=productA13 [L]
4

1 に答える 1

0

RewriteRule の左側 (LHS) に一致する正規表現のみを含めることができます。On RHS は、LHS からキャプチャされたグループを使用できるターゲット URL です。コードを次のように置き換えます。

Options +FollowSymLinks -MultiViews
# Turn mod_rewrite on
RewriteEngine On
RewriteBase /

RewriteRule ^products/(productA\d+)/?$ /products/product.php?ProductRef=$1 [L,QSA,NC]
于 2013-07-08T10:43:20.587 に答える