URL を処理するために mod_rewrite の RewriteMap ディレクティブを使用しています。私の RewriteMap プログラムは PHP スクリプトであり、すべて正常に動作しています。わかりやすい URL を PHP プログラム + ID にマップできます。とにかく、私がやりたいことは、特定の URL に対して 301 リダイレクトを返すことです。たとえば、誰かが URL を入力した場合:
http://www.example.com/directory1
次に、RewriteMap プログラムに 301 リダイレクトを送信させたい
http://www.example.com/directory1/
(末尾のスラッシュ)
その後、再び私のプログラムに入り、PHP スクリプトにマップされます。ステートメントの最後に [R=301] を追加しようとしましたが、これはリクエストをハングアップさせるだけです。私のスクリプトの基本的なロジックは次のとおりです。
if ($input_url == "/directory1") { echo "/directory1/ [R=301]\n"; // これは機能しません...ハングするだけです } else if ($input_url == "/directory1/") { echo "/myprogram.php?id=1\n"; }
何か案は?