Maison  >  Questions et réponses  >  le corps du texte

Impossible d'implémenter cette redirection htaccess

J'en ai un maindomain.com,其中包含一个网站,这里的一些页面应该暂时重定向到我的子域 tmp.maindomain.com. J'ai donc utilisé cette redirection et elle redirige vers tmp.maindomain.com 并且我得到一个无限循环重定向到 tmp.maindomain.com :

redirect 301 /mypage.php https://tmp.maindomain.com/mypage.php

Mon objectif est qu'un utilisateur tente d'accéder à https://www.maindomain.com/mypage.phphttps://maindomain.com/mypage.php 他应该被重定向 302 到 https://tmp .maindomain.com/mypage.php.

Merci pour votre aide.

P粉806834059P粉806834059171 Il y a quelques jours1367

répondre à tous(1)je répondrai

  • P粉593649715

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

    Si le sous-domaine et le domaine principal pointent vers le même emplacement (ou un sous-répertoire de ce dernier), une boucle infinie se produira.

    Dans ce cas, vous devrez utiliser mod_rewrite (au lieu de mod_alias) et vérifier explicitement le nom d'hôte demandé.

    Mais vous avez également utilisé une redirection 301 Permanent. Vous devez plutôt utiliser 302. Les 301 sont conservés dans les caches du navigateur, vous devez donc vous assurer de vider tous les caches avant de tester.

    Essayez ce qui suit en .htaccesstop du fichier du sous-domaine, avant toute directive mod_rewrite existante.

    RewriteEngine On
    
    RewriteCond %{HTTP_HOST} ^(www\.)?maindomain\.com [NC]
    RewriteRule ^mypage\.php$ https://tmp.maindomain.com/rrreee [R,L]

    Notez que le RewriteRule 模式(第一个参数)匹配的 URL 路径不以斜线开头(与 mod_alias Redirectpattern

    RewriteRule (premier paramètre) correspond aux chemins d'URL qui ne commencent pas par une barre oblique (contrairement à la directive mod_alias Redirect).

    La référence arrière

    反向引用包含与整个 RewriteRule 模式 匹配的 URL 路径。 IE。本例中为 mypage.php$0 contient un chemin d'URL qui correspond à l'intégralité du

    modèle

    RewriteRule. c'est à dire. Dans ce cas, mapage.php. Cela évite simplement la duplication puisque vous redirigez vers le même chemin d'URL au niveau de la cible. 🎜 🎜Il s'agit par défaut d'une redirection temporaire 302. 🎜

    répondre
    0
  • Annulerrépondre