元の URL を考えると、mod_rewrite を使用してこれを完全に行うためのすべての情報がそこにあるわけではありません。
したがって、すべての Web リクエストをコントローラ ファイルに送信し、そこからリクエスト uri を解析して正しいページをロードすることができます。
したがって、htaccessでは、次のような...
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^.*$ controller.php [L]
次に、controller.php で URL を解析し、正しいページをロードします。
別のオプション (特定の最終 URL に柔軟に対応できる場合) は、URL を次のようにすることです。
http://www.mywebsite.com/flights/10/Africa/Entebbe.htm
これは、コントローラーを実装するよりも簡単に実行できる可能性があります (ただし、リクエストのルーティングにはコントローラーの方が好みです)。
それで、htaccessに...
RewriteRule
^/flights/([0-9]{1,10})/([a-zA-Z]+)/([a-zA-Z]+)\.htm$
flights-result.php?id=$1&country=$2&place=$3 [L]
次に、flights-results.php ファイルの開始近くで、ID のデータをロードし、提供された「国」と「場所」が正しいことを確認して (人々がここに何も入力しないようにするため)、次の場合は 4040 を返します。そうではありません。
アプリが出力するすべてのリンクも新しいスタイルに変更することを忘れないでください。
あなたが言ったように、これらすべての URL を htaccess にハードコードすることもできますが、それは理想的ではありません :)