私の小さなサイトには約9,000件のレコードがリストされています。現時点では、次のような動的なページでそれらを表示しています
http://domain.com/records.php?id=019031
しかし、Amazonでこのような意味のあるURLを使い始めたい
http://www.Amazon.co.uk/Library-Mythology-Oxford-Worlds-Classics/dp/0199536325
ルートレベルのタイトル文字列は無視され、リクエストはrecords.phpページにリダイレクトされます。このページは通常どおりIDを受け入れます。
Mod_rewriteでそれを達成する方法を知っている人はいますか?レコードページにリダイレクトしたくないhttp://domain.com/contact.php
などの他のルートレベルページへのリクエストをどのように処理するのか疑問に思っています。
ルートの.htaccessでこれを試してください:
RewriteEngine on
RewriteRule ^[^/]+/(\d+)$ records.php?id=$1 [QSA]
http://example.com/foo-bar/42
はhttp://example.com/records.php?id=42
に書き換えられます
^[^/]+/(\d+)$
と一致しないため、contact.php
などのURLには影響しません。