TUTO : Réaliser un fichier .htaccess professionnel -Contao

Contribution des utilisateurs
FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar FiX' » 23 Mai 2012 17:33

tom-over a écrit :
tom-over a écrit :j'ai trouver la solution pour éviter d'impacter les sous-domaines lorsque l'on souhaite forcer le www

Code : Tout sélectionner

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


tu as testé le code ci-dessus ??


Euh, non... mais en même temps, ce n'est pas un soucis de sous-domaine ?!

Imaginons qu'un lien ai été posté sur Facebook et sur d'autres sites (ex, ce lien : http://monsite.com/index.php/ma-page.html). Entre temps, on active le url-rewriting. Ce qui fait que tous les liens possèdent la structure http://www.monsite.com/ma-page.html (plus de /index.php/ entre) ! Si une personne essaye de cliquer sur l'ancien lien, en l’occurrence, http://monsite.com/index.php/ma-page.html... on aura droit à une erreur 404

Je cherche une solution plus simple que de rééditer tous les liens Facebook etc... ! lol

Tu vois ce que je veux dire ?

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar tom-over » 23 Mai 2012 17:43

Oui je vois très bien car je me suis toujours posé la question de l'utilité du index.php/... dans l'url! ! :wink:

de même pour la nouvelle version de Contao où l'on peut ajouter la langue dans l'URL du genre :
www.monsite.com/fr/ma_page.html ou www.monsite.com/en/my_page.html

Le jour où cette nouvelle fonctionnalité fonctionnera (car encore bugé visiblement) les liens publiés dans des sites divers ne seront plus bon...

Donc ta recherche risque d'intéresser grand nombre d'utilisateur de Contao
Essai le forum English par fois on trouve la solution ailleur :wink:

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar FiX' » 24 Mai 2012 09:29

Je viens encore de regarder ce matin, je n'arrive toujours pas à faire en sorte de rediriger les anciennes adresses site.com/index.php/page.html vers les nouvelles site.com/page.html !

D'après ce que j'ai pu lire sur Internet, cela n'est pas possible en .htaccess, car cela créerait une boucle infinie. Il semble qu'une solution existe, en intégrant un code en .php... mais je ne vois pas du tout comment l'ajouter à Contao.

Je viens de poster un sujet sur Contao.org

Bref, une autre question que je me suis posé hier. Imaginons que l'on a un site avec des pages et des sous-pages, exemple :

- Services (page)
---- Service 1 (sous-page)
---- Service 2 (sous-page)
---- Etc...

Les URL seraient respectivement :

- http://www.site.com/services.html (page)
---- http://www.site.com/service-1.html (sous-page)
---- http://www.site.com/service-2.html (sous-page)
---- Etc...

Cependant, point de vue référencement, il faudrait qu'elle aient la structure suivante :

- http://www.site.com/services.html (page)
---- http://www.site.com/services/service-1.html (sous-page)
---- http://www.site.com/services/service-2.html (sous-page)
---- Etc...

Et bonne nouvelle, car la future version de Contao devrait intégrer cette fonctionnalité par défaut ! La preuve ici : http://www.contao.org/en/news/contao-3_0_beta1.html en téléchargeant le fichier Keynote_2012_EN.pdf, page 56.

A+

Avatar de l’utilisateur
iankoOol
Membre
Messages : 160
Inscription : 04 Août 2008 10:07
Localisation : Bretagne

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar iankoOol » 24 Mai 2012 10:02

Salut,

je viens de tester chez moi sans soucis, dans le htaccess

Code : Tout sélectionner

RedirectMatch permanent index.php/page.html http://www.site.com/page.html


Solution de secours pas top, à faire pour chaque page.

Attention pour tester le fonctionnement j'ai dû changer de navigateur (pas pu faire sauter du cache navigateur l'ancien htaccess...)
Graphiste / Dév - Xhtml/css/javascript/php - Faîtes-vous du bien !

Avatar de l’utilisateur
iankoOol
Membre
Messages : 160
Inscription : 04 Août 2008 10:07
Localisation : Bretagne

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar iankoOol » 24 Mai 2012 10:12

Pour répondre à ta question des sous-pages, perso je ne pense pas qu'au niveau référencement celà soit important de savoir que Service 1 est la sous page de Services, le plus important étant d'avoir un nom de page explicite pour ces sous-pages (Service aux abonnés, Nos services pour votre salle de bain ... )... plus tt le barouf SEO...

De plus, généralement (enfin chez moi), la page de niveau 1 (avec menu déroulant, donc sous-pages accessibles) est une redirection vers la sous-page 1...
Graphiste / Dév - Xhtml/css/javascript/php - Faîtes-vous du bien !

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar FiX' » 24 Mai 2012 11:14

Re,

C'est bon, je viens de tester et de re-tester ! ET ÇA MARCHE !

Les adresses déjà indexées par Google (qui avaient donc le /index.php/nom-page.html) redirigent bien vers la bonne page. Pour cela j'ai du modifier pas mal de chose.

Voici le code final :

Code : Tout sélectionner

AddType x-mapp-php5 .php

DirectoryIndex index.php
RewriteEngine ON
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*).html / [L]
RewriteCond %{HTTP_HOST} site.com [NC]
RewriteCond %{HTTP_HOST} !^www.site.com [NC]
RewriteRule (.*) http://www.site.com/$1 [L,R=301]
RedirectMatch permanent /index.php/(.*).html http://www.site.com/$1.html
ErrorDocument 404 /error-404.html
ErrorDocument 403 /error-403.html

Vous en pensez quoi ? J'espère que ça ne pose pas de pb pour le serveur... !

Par contre, je ne comprend pas pourquoi :

Code : Tout sélectionner

RedirectMatch permanent index.php/(.*)\.html http://www.site.com/$1.html

et

Code : Tout sélectionner

RedirectMatch permanent index.php/^(.*)\.html$ http://www.site.com/$1.html

il y a le ^ et $ en plus, produisent une erreur... alors que normalement les expressions doivent commencer par ses éléments. Non ?

PS : J'avais testé avec Redirect permanent et cela fonctionnait, mais avec RedirectMatch permanent on peut inclure des expressions régulières... encore plus pratique !

A+
Dernière édition par FiX' le 25 Mai 2012 09:03, édité 6 fois.

Avatar de l’utilisateur
iankoOol
Membre
Messages : 160
Inscription : 04 Août 2008 10:07
Localisation : Bretagne

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar iankoOol » 24 Mai 2012 11:34

Bon à savoir, çà simplifie les chose, merci pour le retour ! :wink:

Mais première leçon à retenir, éviter de se faire indexer avant d'avoir régler le rewrite url :roll: :wink:
Graphiste / Dév - Xhtml/css/javascript/php - Faîtes-vous du bien !

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar FiX' » 24 Mai 2012 11:53

iankoOol a écrit :Bon à savoir, çà simplifie les chose, merci pour le retour ! :wink:

Mais première leçon à retenir, éviter de se faire indexer avant d'avoir régler le rewrite url :roll: :wink:


J'ai jamais dit le contraire !

Mais c'est pas de ma faute si il y a avait une contrainte de temps énorme et que le client voulait son site en ligne à cette date !

A+

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar tom-over » 24 Mai 2012 13:20

iankoOol a écrit :Bon à savoir, çà simplifie les chose, merci pour le retour ! :wink:

Mais première leçon à retenir, éviter de se faire indexer avant d'avoir régler le rewrite url :roll: :wink:

Pas seulement car les Url peuvent changer aussi en fonction des évolutions de Contao !

Par exemple la prochaine en vue est l'intégration de la langue :
http://www.monsite.com/FR/ma-page.html
http://www.monsite.com/EN/my-page.html
http://www.monsite.com/ES/mi-pagina.html

Je me demande le résultat lorsqu'un site existant intègrera ce nouveau paramètre !
Dernière édition par tom-over le 25 Juil 2012 14:47, édité 1 fois.

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar FiX' » 24 Mai 2012 14:43

tom-over a écrit :
iankoOol a écrit :Bon à savoir, çà simplifie les chose, merci pour le retour ! :wink:

Mais première leçon à retenir, éviter de se faire indexer avant d'avoir régler le rewrite url :roll: :wink:

Pas seulement car les Url peuvent changer aussi en fonction des évolutions de Contao !

Par exemple la prochaine en vue est l'intégration de la langue :
http://www.monsite.com/FR/ma-page.html
http://www.monsite.com/EN/my-page.html
http://www.monsite.com/ES/mi-pagina.html

Je me demande le résultat lorsqu'un site existant intègre ce nouveau paramètre !


Je ne sais pas trop comment cela va se passer avec la future version de Contao. Peut-être qu'un fichier htaccess sera directement intégré et paramétré au package.

Bref, juste pour info, il y a une dernière chose que je ne comprends pas trop... :

Si je tape l'ancienne adresse http://site.com/index.php/ma-page.html, il va me rediriger directement vers http://www.site.com/ma-page.html : PARFAIT !

Par contre, si je tape http://www.site.com/INDEX.PHP/ma-page.html, en majuscule, il ne redirige pas, mais affiche quand même la bonne page ?!

Et si je tape http://site.com/ma-page.html ou http://site.com/INDEX.PHP/ma-page.html (j'enlève volontairement les www.), il va me rediriger vers la racine du nom de domaine à savoir http://www.site.com

Vous pensez que cela va avoir une influence sur le référencement ?

:shock: :?

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar tom-over » 24 Mai 2012 14:54

FiX' a écrit :Par contre, si je tape http://www.site.com/INDEX.PHP/ma-page.html, en majuscule, il ne redirige pas, mais affiche quand même la bonne page ?!

Et si je tape http://site.com/ma-page.html ou http://site.com/INDEX.PHP/ma-page.html (j'enlève volontairement les www.), il va me rediriger vers la racine du nom de domaine à savoir http://www.site.com

En même temps je ne vois pas pourquoi index.php seul serait ecrit en MAJUSCULE ???? ! ! ?
Pour quelle raison ?? :lol:
- Google ne s'amuse pas à référencer des url en majuscules
- Pourquoi un webmaster s'amuserait à créer un lien vers ton site en majuscule ? lol

Tu m'as fait rire avec ton commentaire ! Mais rassure toi ce n'est pas méchant, c'est juste que je me suis reconnu dans ta réflexion et parfois on a tendance à trop se poser des questions et à trop vouloir perfectionner la chose inutilement ! :wink:
J'avais commencé à écrire une répondre à ton post sérieusement avec une ligne de code à ajouter au fichier .htaccess et puis la reflexion ci-dessus a surgi ! lol

FiX'
Membre
Messages : 399
Inscription : 02 Jan 2009 01:04

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar FiX' » 24 Mai 2012 15:26

tom-over a écrit :
FiX' a écrit :Par contre, si je tape http://www.site.com/INDEX.PHP/ma-page.html, en majuscule, il ne redirige pas, mais affiche quand même la bonne page ?!

Et si je tape http://site.com/ma-page.html ou http://site.com/INDEX.PHP/ma-page.html (j'enlève volontairement les www.), il va me rediriger vers la racine du nom de domaine à savoir http://www.site.com

En même temps je ne vois pas pourquoi index.php seul serait ecrit en MAJUSCULE ???? ! ! ?
Pour quelle raison ?? :lol:
- Google ne s'amuse pas à référencer des url en majuscules
- Pourquoi un webmaster s'amuserait à créer un lien vers ton site en majuscule ? lol

Tu m'as fait rire avec ton commentaire ! Mais rassure toi ce n'est pas méchant, c'est juste que je me suis reconnu dans ta réflexion et parfois on a tendance à trop se poser des questions et à trop vouloir perfectionner la chose inutilement ! :wink:
J'avais commencé à écrire une répondre à ton post sérieusement avec une ligne de code à ajouter au fichier .htaccess et puis la reflexion ci-dessus a surgi ! lol


Ouais, ça c'est bien vrai que l'on se pose souvent trop de questions !

Mais j'ai un peu peur qu'au niveau du référencement il y ait des doublons ou des erreurs/problèmes.

Je sais bien que INDEX.php ne devrait pas s'écrire en majuscules, mais tu sais de nos jours, les visiteurs ne font pas attentions à ce qu'ils tapent et comment ils le tapent !

A+

Avatar de l’utilisateur
tom-over
Membre
Messages : 829
Inscription : 23 Mai 2008 10:43
Localisation : Rouen

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar tom-over » 25 Juil 2012 14:51

j'utilise Contao 2.11.4 intégrant la langue aux URL

et je rencontre un problème de redirection quand je change de langue !

Code : Tout sélectionner

RedirectMatch permanent /fr/accueil.html http://www.mon-site.com/fr/
RedirectMatch permanent /en/home.html http://www.mon-site.com.com/en/

quand je souhaite consulter le site dans sa version Anglaise je suis redirigé à chaque fois vers la home page en français... ce n'est pas logique quand on regarde le code ci-dessus...

evantro
Membre
Messages : 165
Inscription : 16 Mars 2010 11:02
Localisation : Madrid

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar evantro » 12 Juin 2013 08:10

Bonjour

je déterre ce sujet, car avec la version 2.11 (et quelques précédentes) le fichier htaccess est beaucoup plus complet et compliqué.

Je n'arrive pas a configurer une page ErrorDocument, sachant que j'ai un domaine multi-langue et que la langue apparait dans l'url.

Quelqu'un saurait faire ?

Merci

Avatar de l’utilisateur
KlausGrenoble
Membre
Messages : 261
Inscription : 27 Jan 2013 00:11
Localisation : Grenoble

Re: TUTO : Réaliser un fichier .htaccess professionnel -Cont

Messagepar KlausGrenoble » 12 Juin 2013 19:45

https://community.contao.org/de/showthread.php?41939-Wie-konfiguriert-man-eine-ErrorDocument-Seite-f%FCr-eine-mehrsprachige-Website
Ich leite meine 404 und 403 per .htaccess auf eine PHP-Datei weiter error.php. Dort frage ich ab um welchen Statuscode es sich handelt und leite dort dann weiter auf meine in Contao angelegten 404 / 403 Seiten. Cool an der Sache ist, dass ich noch als Get-Parameter ?ref=gesuchte/seite/anzeigen.html mitgeben kann. Damit sehe ich im Backend gleich was der User/Google gesucht hat. Dazu kann man dann noch Keywords übermitteln und eine Suche einbauen auf den Fehlerseiten etc...


Ma traduction:
Je conduis mes 404 et 403 par .htaccess vers un fichier php, error.php. Là je demande de quel code de status il s'agit.
Ce qui est cool, c'est que je puisse accompagner cette conduite vers la error.php avec un paramètre ?ref=afficher/page/cherchée.html. Avec ceci je vois dans le BE ce que l'utilisateur Google avait cherché. Ajouté à ça on peut aussi transmettre des mots clé et introduire dans les pages d'erreurs un recherche etc...
(J'espère que t'as tout compris. Je connais pas bien php).

traduction Google pour rigoler: Je transmets mon error.php 404 et 403 par. htaccess dans un fichier php. De là, je demande à ce que le code d'état est là et dirige ensuite continuer sur mon échelle dans Contao 404/403 pages. Ce qui est cool, c'est que peut je reçois toujours un paramètre ref? Cherché = / donner à la page / anzeigen.html. Ainsi, je vois la même chose dans le dos de l'utilisateur / Google a été la recherche d'. Ceux-ci peuvent ensuite transmettre plus de mots-clés et d'intégrer une recherche sur les pages d'erreur


Revenir vers « Tutoriels utilisateurs »

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 16 invités