web-dev-qa-db-fra.com

Google App Engine 301 Redirect

J'ai une application Web Google App Engine Java que j'ai configurée avec un domaine personnalisé de GoDaddy. Le site est actuellement accessible sur domain.com et www.domain.com. J'essaie d'avoir une redirection 301 chaque fois que quelqu'un tente d'accéder à domain.com au lieu de www.domain.com. J'ai essayé d'utiliser le transfert de domaine via GoDaddy, sans succès. Comment puis-je atteindre cet objectif?

Voici la configuration de mon moteur Google App. J'ai ajouté tous ces enregistrements au gestionnaire DNS GoDaddy.

Voici les informations de transfert de domaine que j'ai essayées: enter image description here

3
Lars

Mise à jour: Il y a 3 façons de faire cela.

  1. htaccess
  2. php en yaml avec redirection
  3. Dans Google même.

Spécifiez le domaine et les sous-domaines que vous souhaitez mapper.

Remarque: le domaine et le sous-domaine www sont pré-renseignés dans le formulaire. Un domaine nu, tel que exemple.com, est mappé sur http://example.com . Un sous-domaine, tel que www, correspond à http://www.example.com . Cliquez sur Submit mappings pour créer le mappage souhaité. Dans la dernière étape du formulaire Ajouter un nouveau domaine personnalisé, notez les enregistrements de ressources répertoriés, ainsi que leur type et leur nom canonique.

article complet sur Google

Lien vers la connexion aux domaines personnalisés sur Google

HTACCESS

En supposant que vous êtes sur leur serveur Apache, vous souhaitez ajouter ceci à votre fichier .htaccess. Ceci est pour les deux, choisissez-en un. Remplacez exemple par votre nom de domaine.

#Force www:
RewriteEngine on
RewriteCond %{HTTP_Host} ^example.com [NC]
RewriteRule ^(.*)$ http://www.example.com/$1 [L,R=301,NC]

#Force non-www:
RewriteEngine on
RewriteCond %{HTTP_Host} ^www\.example\.com [NC]
RewriteRule ^(.*)$ http://example.com/$1 [L,R=301]
2
norcal johnny

Google ne supporte pas le fichier htaccess. Ils supportent le fichier app.yaml, qui ont différents règle de réécriture du mod , mais pour autant que je sache, il ne s’appliquera qu’à un seul CNAME, cela signifie que si vous avez défini www.example.com, ces règles de réécriture non applicable à example.com.

Vous pouvez utiliser un caractère générique * dans CNAME, qui redirige tous vos sous-domaines vers votre nom de domaine indiqué. Par exemple, si les personnes accèdent à example.com/directory/, elles seront automatiquement redirigées vers www.example.com/directory/. L'inconvénient principal du caractère générique est qu'il s'applique à tous vos sous-domaines. Cela signifie que vous ne pouvez ajouter aucun contenu tel que des images et un blog dans votre sous-domaine. Par exemple, blog.example.com sera redirigé vers www.example.com et les images. .example.com/puppy.jpg redirigera vers www.example.com/puppy.jpg(Qui peut provoquer une erreur 404). Mais si vous n'avez rien placé dans votre sous-domaine, alors le joker va résoudre votre problème.

Et, si vous souhaitez simplement rediriger exemple.com vers www.exemple.com et non vers un autre sous-répertoire, vous pouvez utiliser balise meta refresh , qui est une solution côté client. Ou vous pouvez héberger votre domaine nu ailleurs (les pages Github, Firebase sont une solution gratuite) et faire la redirection 301.

0
Goyllo