ホームページ  >  に質問  >  本文

この htaccess リダイレクトを実装できません

Web サイトを含む maindomain.com があり、ここの一部のページは一時的にサブドメイン tmp.maindomain.com にリダイレクトされる必要があります。 そこで、このリダイレクトを使用すると、tmp.maindomain.com にリダイレクトされ、tmp.maindomain.com にリダイレクトされる無限ループが発生しました。 リーリー

私の目標は、ユーザーが

https://www.maindomain.com/mypage.php または https://maindomain.com/mypage.php にアクセスしようとした場合に、彼は 302 で https://tmp .maindomain.com/mypage.php にリダイレクトされるはずです。 ###お手伝いありがとう。

P粉806834059P粉806834059171日前1368

全員に返信(1)返信します

  • P粉593649715

    P粉5936497152024-04-05 13:03:26

    サブドメインとメイン ドメインが同じ場所 (または後者のサブディレクトリ) を指している場合、無限ループが発生します。

    この場合、(mod_alias の代わりに) mod_rewrite を使用し、要求されたホスト名を明示的に確認する必要があります。

    ただし、301 Permanent リダイレクトも使用しました。代わりに 302 を使用する必要があります。 301 はブラウザのキャッシュによって保持されるため、テストする前に必ずすべてのキャッシュをクリアする必要があります。

    サブドメインの .htaccess ファイルの top で、既存の mod_rewrite ディレクティブの前に次のコマンドを試してください。

    リーリー

    RewriteRule pattern (最初のパラメーター) は、スラッシュで始まらない URL パスに一致することに注意してください (mod_alias Redirect ディレクティブとは異なります)。

    $0 後方参照には、RewriteRule pattern 全体に一致する URL パスが含まれています。つまり。この場合は mypage.php です。これにより、ターゲットで同じ URL パスにリダイレクトされるため、重複が節約されるだけです。

    これはデフォルトで 302 一時リダイレクトになります。

    返事
    0
  • キャンセル返事