web-dev-qa-db-fra.com

Azure Website 301 Redirect - Où dois-je le mettre?

Je souhaite diriger certains de mes autres domaines vers mon domaine principal hébergé sur un site Web Windows Azure.

(Pour ceux qui trouvent que travailler avec CNAME et DNS est un peu "brumeux" (comme je l'ai fait), je vais mettre les détails en page.)

J'ai le domaine www.myDomain.com résolution correcte.

Je veux maintenant pointer www.myOtherDomain.com to www.myDomain.com

Chez mon registraire, j'ai créé un CNAME pour pointer
www.myOtherDomain.com to myInternalAzureSite.azurewebsite.net
, puis correctement configuré dans l'outil de gestion de domaine du site Web Azure.

Maintenant, quand j'entre www.myOtherDomain.com dans un navigateur, j'obtiens la page Web appropriée sur www.myDomain.com, cependant, l'adresse dans le navigateur est toujours www.myOtherDomain.com ne pas www.myDomain.com comme voulu.

Je comprends que les deux façons les plus souhaitables d'y parvenir sont:

  1. Vers l'avant myOtherDomain.com (qui coûte $ chez certains bureaux d'enregistrement)
  2. Faire une redirection permanente 301

Si j'ai tout cela correct, j'ai trouvé de nombreuses suggestions de COMMENT pour faire la redirection 301, cependant, je n'arrive pas à comprendre pour mettre réellement la redirection?

32
Richard

Les sites Web Windows Azure exécutent IIS. Vous pouvez utiliser la réécriture d'URL pour créer des règles de réécriture d'une URL à une autre.

Instructions:

  1. Créez un site Web dans Windows Azure.

  2. Dans la section Échelle, sélectionnez un mode de site Web partagé ou standard et enregistrez les modifications.

  3. Dans la section Configurer, dans le groupe des noms de domaine, ajoutez l'ancien nom (ou les noms) de domaine et le nouveau nom de domaine et enregistrez les modifications.

  4. Dans votre registraire de domaine ou fournisseur DNS pour l'ancien domaine et le nouveau domaine, modifiez les enregistrements DNS pour pointer vers le nouveau site Web Windows Azure. Utilisez un enregistrement "CNAME (alias)" et pointez-le vers le domaine du site Web sur Windows Azure, comme ceci: "mywebsite.azurewebsites.net".

  5. Téléchargez le contenu de votre nouveau site Web sur Windows Azure.

  6. À la racine du nouveau site Web, créez un fichier nommé Web.config avec un contenu comme celui-ci:

    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
        <system.webServer>
            <rewrite>
                <rules>
                    <rule name="Redirect old-domain to new-domain" stopProcessing="true">
                        <match url=".*" />
                        <conditions>
                            <add input="{HTTP_Host}" pattern="^www.old-domain.com$" />
                        </conditions>
                        <action type="Redirect" url="http://www.new-domain.com/{R:0}" redirectType="Permanent" />
                    </rule>              
                </rules>
            </rewrite>
        </system.webServer>
    </configuration>
    
  7. Vérifiez que toute demande de " http://www.old-domain.com/path?query " recevra une réponse "301 déplacé en permanence" avec un en-tête d'emplacement pour " http: //www.new-domain.com/path?query ".

Pour la documentation, reportez-vous à tilisation du module de réécriture d'URL .

Pour des exemples, reportez-vous à Rediriger vers un nouveau domaine après le changement de marque avec IIS Module de réécriture d'URL et IIS URL Rewrite - Rediriger plusieurs noms de domaine vers un) .

58
Fernando Correia

Il n'est pas nécessaire de télécharger le fichier web.config car il en existe un auquel vous pouvez accéder via l'interface Azure.

Ouvrez le volet des paramètres de votre App Service et cliquez sur Éditeur App Service (Aperçu) dans la section Outils de développement vers le bas du menu de gauche.

Cliquez sur Aller pour ouvrir l'éditeur dans un nouvel onglet. Vous verrez le fichier web.config sur la gauche. Cliquez dessus pour le modifier dans le volet principal.

Un mot d'avertissement - cet éditeur enregistrement automatique au fur et à mesure que vous tapez! Je suis sûr que nous ferions tous cela de toute façon, mais je vous recommande de préparer votre code dans un éditeur et de le coller.

J'ai pu ajouter une section sans avoir à redémarrer manuellement l'App Service.

5

Vous pouvez également effectuer la redirection en plaçant ce code dans votre web.config fichier sous le nœud configuration:

<configuration>
  <location path="oldpage1.php">
    <system.webServer>
      <httpRedirect enabled="true" destination="http://domain.com/newpage1" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>
  <location path="oldpage2.php">
    <system.webServer>
      <httpRedirect enabled="true" destination="http://domain.com/newpage2" httpResponseStatus="Permanent" />
    </system.webServer>
  </location>
</configuration>
4
Celt