web-dev-qa-db-ja.com

Apache 2.2は1つのディレクトリを除くすべてをリダイレクトします

私のhttpd.confファイルにこれがあります:

<VirtualHost IP.AD.DR.ESS:80>
    ServerName example.com
    Redirect Permanent / https://example.net/
</VirtualHost>

これにより、以前はhttp://example.comにあったすべてのものが、対応する新しい場所https://example.netにリダイレクトされます。ただし、アクセスする必要のあるデータが新しいサーバー上にないため、example.com/specialdir/というディレクトリが古いサーバー上にある必要があることがわかりました。 (数ダースの他のサイトを含む移行を完了するにはmonthsかかります。)

これをhttpd.confで修正するための合理的な方法はありますか、または.htaccessファイルの束を使用する必要がありますか? <Location>コンテナでできることはあると思いますが、情報を見つけるために尋ねる適切な質問がわかりません。

7
FKEinternet

Redirectディレクティブを変更して、代わりに RedirectMatch を使用し、/specialdirを除くパターンを使用できます。

RedirectMatch Permanent "^(/(?!specialdir/).*)" https://example.net/$1
13
hjpotter92