多数の古いURLを新しいURLにリダイレクトするための最良の方法は?
質問
クライアントのためにプラットフォームを変更していますが、彼らはSEOを心配しています。彼らの現在のサイトはSEOフレンドリーなURLをサポートしており、新しいプラットフォームもサポートしています。そのため、同じURLマッピングを作成するだけです。ただし、永続的にリダイレクトしたいSEOフレンドリーでない他のURLが多数あります。これらは同様のパターンに従っていないため、.htaccess内の1つの正規表現はそれをカットしません。 LAMPスタックでこれを処理する最良の方法は何ですか?アプリケーションにはフロントコントローラーもあるので、ハードリダイレクトとともに動作することを確認する必要があります。
解決
1つのアプローチ(私が選択した)は古いURLと新しいURLの単純なテーブルを作成し、 mod_rewrite を使用して、テーブルを読み取り、リダイレクトを実行します。テーブルは、Apache configの外部のファイルに格納できます。
別の方法として、テーブルをデータベースに保存する場合は、データベースを照会するスクリプトを作成できます。
これは、マッピングを手動で作成するか、このマッピングファイルを出力するスクリプトを作成する必要があることを意味します。
他のヒント
PHPを使用して古いURLを新しいURLにリダイレクトできます。
header("Location: /new.html",TRUE,301);
このPHPスクリプトにリクエストをリダイレクトする必要がありますが、これはより柔軟で簡単な場合があります。 mod_rewriteを排他的に使用するよりもデバッグします。
所属していません StackOverflow