Redirection http vers www ne fonctionne pas OVH

Nouveau WRInaute
Bonjour,

Pour éviter le duplicate content, j'aimerais rediriger avec une redirection 301 mondomaine.com vers www.mondomaine.com.
Je suis chez OVH et à présent, que l'on accède à http://mondomaine.com ou www.mondomaine.com fonctionne sans que je sache trop pourquoi.

Si je modifie le .htaccess à la racine du site sur mon ftp (dossier racine du dossier /www/ => donc /) pour indiquer comme j'ai vu partout sur le web
Code:
RedirectPermanent / http://www.mondomaine.com
, j'obtiens une boucle de redirection.

Pourriez-vous m'indiquer comment faire ? Voici le contenu de mon .htaccess (aussi bien sur / que sur /www/) :

Code:
SetEnv PHP_VER 5_3
SetEnv REGISTER_GLOBALS 0

## Turn on URL rewriting 

RewriteEngine On

## Following lines to be used if multiple domains are used to point to master domain   
## Put your installation directory here:  

RewriteBase /

## Do not enable rewriting for files or directories that exist  
# Protect application and system files from being viewed 

RewriteRule ^(application|core) - [F,L]   

# Allow any files or directories that exist to be displayed directly  

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteCond %{REQUEST_FILENAME} !-d    
Rewritecond %{REQUEST_URI} !(^/a/*$) [NC]  

## For requests that are not actual files or directories, rewrite to index.php/URL      

RewriteRule ^(.*)$ index.php?query_string=$1 [PT,QSA,L] 
RewriteRule ^(ajax_call\.php)$   ajax_call.php/$1 [PT,QSA,L]  

Options -Indexes 

AddOutputFilterByType DEFLATE text/html text/xml application/xhtml+xml text/plain application/javascript text/css
 
WRInaute accro
Comme ça c'est mieux ;)

Code:
RewriteEngine On
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ http://www.%{HTTP_HOST}/$1 [R=301,L]
 
Nouveau WRInaute
WRInaute accro
Si tu places ces lignes à la suite de la ligne "RewriteEngine On" qui existe déjà dans ton fichier .htaccess, ça ne peut que fonctionner (utilisé des centaines de fois sur OVH, y-compris sur les offres mutu 2014).

NB: inutile de répéter la ligne "RewriteEngine On", évidemment...

Eventuellement, sur ces offres 2014 qui sont plus fortement mises en cache, passe ton environnement en "développement" via le fichier .ovhconfig (en replaçant provisoirement environment=produciton par environment=development).

PS(1): WRI propose un outil d'analyse des entêtes HTTP également: https://www.webrankinfo.com/outils/header.php
PS(2): pour les URLs d'exemple, il existe un standard: http://example.com (avec un a) ;)
 
Nouveau WRInaute
HawkEye a dit:
Si tu places ces lignes à la suite de la ligne "RewriteEngine On" qui existe déjà dans ton fichier .htaccess, ça ne peut que fonctionner (utilisé des centaines de fois sur OVH, y-compris sur les offres mutu 2014).
Je viens de réessayer d'ajouter ces deux lignes à la suite du RewriteEngine On dans le .htaccess situé à la racine de mon serveur et l'outil d'analyse d'entêtes HTTP de Webrankinfo me retourne encore un Code 200.

HawkEye a dit:
Eventuellement, sur ces offres 2014 qui sont plus fortement mises en cache, passe ton environnement en "développement" via le fichier .ovhconfig (en replaçant provisoirement environment=produciton par environment=development).

Ce n'est pas une offre de 2014 et je n'ai pas de fichier .ovhconfig sur mon serveur.
 
WRInaute accro
Quel est l'URL du site ?
Quel est le type d'hébergement OVH (mutu / dédié) ?
Ton fichier .htaccess est-il bien à la racine de ton site (pour un mutu classique, c'est dans le répertoire /www/) ?
Ton fichier .htaccess est-il bien un fichier .htaccess, et pas un fichier htaccess.txt qu'il est nécessaire de renommer pour pouvoir l'utiliser (cf. installation de base Joomla!) ?

Si nécessaire, on échange en MP tes identifiants FTP et je jette un oeil.
 
WRInaute impliqué
Code:
RewriteCond %{HTTP_HOST} !^www\.tonsite\.fr [NC]
RewriteRule ^(.*) http://www.tonsite.fr/$1 [QSA,L,R=301]

Cette syntaxe fonctionne, elle est en place chez moi et je suis chez OVH en mutu ;)

Si ça peut aider !
 
WRInaute discret
darkjukka a dit:
Cette syntaxe fonctionne, elle est en place chez moi et je suis chez OVH en mutu ;)
Je rebondis sur ce post car j'aimerais aussi trouver la solution permettant de régler ce problème proprement.

J'utilise les mêmes lignes de codes que toi sur mon domaine principal, et pas de problème, ça fonctionne.
Par contre, sur les autres domaines, en multi domaine sur mutualisé, ça ne fonctionne pas. En tout cas pas chez moi.
J'ai aussi utilisé les autres propositions de ce fil, sans plus de succès ... :(

Pour palier au problème, en attendant de trouver la bonne solution, j'ai fait une redirection depuis le manager ovh. Ca fait une 302, mais au moins ça redirige example.com vers www.example.com
 
WRInaute impliqué
Je dois être béni chez OVH car ça marche sans soucis en multi-domaines sur mon hébergement mutualisé avec cette syntaxe partout ...
A la racine de mon hébergement j'ai les dossiers rangés comme ça :

www/
site1.fr/
site2.fr/

et dans chaque dossier un htaccess avec le bout de code qui va bien.
 
WRInaute impliqué
Tu me mets le doute mais non je n'ai pas ce souvenir, il faudra que je regarde de façon approfondie pour en être sûr ;)
Si c'est dans la section "Redirections web" c'est sur que non, après je pense pas qu'on puisse jouer sur ça dans la zone DNS ...
 
WRInaute accro
tes domaines a rediriger pointent ils sur le dossier qui contient le htaccess ?
 
WRInaute accro
bah non pas vraiment toi ça fonctionne :wink: (moi aussi d’ailleurs chez OVH ou ailleurs)
 
Nouveau WRInaute
Ca fonctionne à présent.
J'éditais le .htaccess présent à la racine (/) en lieu et place de celui présent à /www/.
Merci à tous.
 
WRInaute discret
Moi ça m'a pas aidé :(

J'ai ça (je dis ça car je parle pas cette langue):

RewriteCond %{HTTP_HOST} ^mon site.com$
RewriteRule ^(.*) http://www.mon site.com/$1 [QSA,L,R=301]

RewriteCond %{HTTP_HOST} !^www\.mon site\.com [NC]
RewriteRule ^(.*) http://www.mon site.com/$1 [QSA,L,R=301]

RewriteCond %{REQUEST_URI} ^(.*)//(.*)$
RewriteRule . %1/%2 [R=301,L]
RewriteRule ^/(.*)$ h ttp://www.mon site.com/$1 [R=301,L]

Et lorsque je tape www.mon site.com et http://www.mon site.com, j'ai la page d'accueil, mais si je tapes mon site.com, j'ai une page d'ovh ( h ttps://ssl0.ovh.net/fr/ )

??
 
Discussions similaires
Haut