PrestaShop Forum

The best place in the world to ask questions about PrestaShop and get advice from our passionate community!

PrestaShop Forum

Jump to content

[Tuto] Fichier .htaccess

17 replies to this topic
#1
Patric Codron

    PrestaShop Superstar

  • PrestaTeam
  • 9152 posts
Présentation

Pour le bon fonctionnement de la boutique, et notamment de l'URL rewriting ou réécriture d'URL dans le cadre de l'utilisation des URLs simplifiées (voir Panneau d'administration >> Préférences, option URL simplifiée) il est nécessaire d'utiliser à la racine de la boutique un fichier nommé .htaccess.

Lors de l'installation de PrestaShop, ce fichier existe déjà sous le nom htaccess.txt.
Pour le rendre fonctionnel, il faut le renommer en .htaccess (exactement comme ça, avec un '.' devant, et en supprimant l'extension .txt).

Renommer le fichier

S'il n'est généralement pas difficile d'effectuer ce renommage sur un serveur distant via le logiciel FTP, l'opération peut s'avérer beaucoup plus compliquée en local, sous Windows. :sick:

En effet, Windows n'aime pas qu'on mette un '.' au début du nom d'un fichier. Donc il refuse de renommer en .htaccess.
Pour y parvenir, il faut ouvrir le fichier htaccess.txt, par exemple avec Wordpad. Eviter Notepad car problèmes possibles d'affichage avec les retours à la ligne, et surtout pas avec Word.
Une fois ouvert (dans Wordpad), faire Fichier > Enregistrer sous... et lui donner le nom .htaccess. Et voilà, Windows vient d'être grugé ! :coolsmile:

Donc à la racine de la boutique il doit maintenant y avoir un fichier .htaccess !

Quand Windows a décidé que vous n'auriez pas votre .htaccess !...

Vous avez bien renommé le fichier comme expliqué ci-dessus, vous voyez bien un fichier .htacces à la racine de votre boutique, pourtant il ne semble pas être pris en compte ?

Ceci est peut-être dû à une autre sournoiserie de Windows. :down:

Par défaut, Windows est configuré pour cacher les extensions des fichiers (.txt, .jpg, .doc...). Lorsqu'on "Enregistre sous..." dans Wordpad au format "Document texte" (type de fichier), il rajoute automatiquement l'extension .txt après le nom saisi !
Et comme Windows masque l'extension, c'est transparent...

Dans ce cas, ce que l'on voit comme étant un .htaccess est en fait un .htaccess.txt !

Pour renommer le fichier htaccess.txt en .htaccess sous Windows, faire comme suit :
* ouvrir le fichier htaccess.txt dans Wordpad;
* faire Fichier > Enregistrer sous...;
* dans le champ Nom du fichier, taper ".htaccess", avec les guillemets (ça permet de lui dire "enregistre exactement comme ça sans rien ajouter !");
* pour Type, choisir Document texte;
* cliquer sur Enregistrer.

Le fichier s'appelle maintenant réellement .htaccess. Normalement son icône n'est plus la même et quand on double-clic dessus, Windows demande avec quoi il doit l'ouvrir.
Donc dorénavant pour l'ouvrir dans Wordpad, faire dessus clic droit > Ouvrir avec... > Wordpad ou s'il n'est pas dans la liste Choisir le programe... pour chercher Wordpad...

Modification du fichier

Selon les hébergeurs, il peut être nécessaire d'apporter quelques modifications au contenu de ce fichier.
De nombreux posts traitent du sujet. Je vous laisse utiliser l'outil de recherche du forum pour trouver ce qui vous correspond le mieux.

Vous pouvez notamment consulter ce post :
http://www.prestasho.../viewthread/446
Patric CodronCommunity Manager | Manager de CommunautéPrestaShop

Posted Image Merci de respecter les règles du forum PrestaShop.com :)
Posted Image Please comply with the PrestaShop.com forum rules :)

#2
success3

    PrestaShop Newbie

  • Members
  • Pip
  • 23 posts
Bonjour

je ne trouve absolument pas le fichier htaccess.txt dans mon dossier Prestashop
Où ce trouve-t-il ?

merci beaoup

#3
Votre Econsultant

    PrestaShop Apprentice

  • Members
  • PipPip
  • 57 posts
Bonjour à tous,
si vous souhaitez régler ce souci .htaccess, j'ai écris un article la dessus. (si toutefois vous trouvez pas votre bonheur, n'hésitez pas à me contacter grâce au module de tchat, c'est gratuit)

Bon courage à tous, mais surtout bonnes fetes de fin d'année

Guillaume, votre Econsultant

#4
botashi

    PrestaShop Apprentice

  • Members
  • PipPip
  • 55 posts

From 1260917418:

Bonjour

je ne trouve absolument pas le fichier htaccess.txt dans mon dossier Prestashop
Où ce trouve-t-il ?

merci beaoup


je crois qu'il est dans le dossier Admin
( www/Ta-boutique / Ton-dossier-Admin-que-tu-as-renomme-en-installant-prestashop )

:ahhh:

#5
Jimmy

    PrestaShop Apprentice

  • Members
  • PipPip
  • 63 posts
je viens d'installer la version 1.3.1 et je ne trouve nulle trace du ficher htaccess.txt.

#6
fly_in_the_sky

    PrestaShop Apprentice

  • Members
  • PipPip
  • 134 posts
Bonjour,
Je suis entrain de mettre à jour, et je ne trouve pas le fichier htaccess, du coup cela pose un fameux problème pour la mise en ligne afin de ne pas perdre mon référencement ...

Mon ancien fichier htaccess, n'afiche pas les photos ...
Merci de m'aider rapidement ,
Peut -être quelqu'un peut (il mettre le contenu de son dossier htacess de la version 1.3 afin que le crée manuelement ?
merci
Nicolas
Nicolas Deru
www.casse-noisettes.be/shop
Boutique de jeux et jouets éthiques, en bois, fabriquer en Europe.

#7
success3

    PrestaShop Newbie

  • Members
  • Pip
  • 23 posts
Bonjour à tous
J'ai réussi à fabriquer mon .htaccess pour un hébergement chez OVH, tout fonctionne à part deux exceptions que voici :

1- Pas de réécriture des URL des pages CMS :/

2- J'ai dû créer deux nouvelles pages catégories, pour respecter la maquette graphique (category-sous.php et category-sous-sous.php) et là non plus la réécriture des URL ne fonctionne pas, bien que le lien fonctionne re :/

Avez-vous une solution ou des infos pour m'aider ?

J'aimerais aussi comprendre comment fonctionne la réécriture des url histoire de savoir ce que je fais (=$2&isolang;=$1$4 [L,E] ou ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ etc...)

Voici le code de mon .htaccess :

SetEnv PHP_VER 5
SetEnv REGISTER_GLOBALS 0

# URL rewriting module activation
RewriteEngine on
Rewritebase /




deny from all



# URL rewriting module activation
RewriteEngine on
RewriteCond %{HTTP_HOST} ^monsite.com/prestashop/$
RewriteRule ^(.*) http://www.monsite.com/prestashop/$1 [QSA,L,R=301]

# URL rewriting rules
RewriteRule ^([a-z0-9]+)\-([a-z0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ prestashop/img/p/$1-$2$3.jpg [L,E]
RewriteRule ^([0-9]+)(\-[_a-zA-Z0-9-]*)/([_a-zA-Z0-9-]*)\.jpg$ prestashop/img/c/$1$2.jpg [L,E]
RewriteRule ^lang-([a-z]{2})/([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ prestashop/product.php?id_product=$3&isolang;=$1$5 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ prestashop/product.php?id_product=$2&isolang;=$1$4 [L,E]
RewriteRule ^lang-([a-z]{2})/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ prestashop/category.php?id_category=$2&isolang;=$1 [QSA,L,E]
RewriteRule ^([a-zA-Z0-9-]*)/([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ prestashop/product.php?id_product=$2$4 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)\.html(.*)$ prestashop/product.php?id_product=$1$3 [L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ prestashop/category.php?id_category=$1 [QSA,L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ prestashop/category-sous.php?id_category=$1 [QSA,L,E]
RewriteRule ^([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ prestashop/category-sous-sous.php?id_category=$1 [QSA,L,E]
RewriteRule ^content/([0-9]+)\-([a-zA-Z0-9-]*)(.*)$ prestashop/cms.php?id_cms=$1 [QSA,L,E]
RewriteRule ^([0-9]+)__([a-zA-Z0-9-]*)(.*)$ prestashop/supplier.php?id_supplier=$1$3 [QSA,L,E]
RewriteRule ^([0-9]+)_([a-zA-Z0-9-]*)(.*)$ prestashop/manufacturer.php?id_manufacturer=$1$3 [QSA,L,E]
RewriteRule ^lang-([a-z]{2})/(.*)$ prestashop/$2?isolang=$1 [QSA,L,E]

# Catch 404 errors
ErrorDocument 404 prestashop/404.php


Merci d'avance
Cordialement

#8
fly_in_the_sky

    PrestaShop Apprentice

  • Members
  • PipPip
  • 134 posts
Salut,
JE viens de tester ton fichier, adapter à mon site, et maleurheusement, il n'y a pas d'image qui s'affiche ...
chez toi bien ?
Nicolas Deru
www.casse-noisettes.be/shop
Boutique de jeux et jouets éthiques, en bois, fabriquer en Europe.

#9
success3

    PrestaShop Newbie

  • Members
  • Pip
  • 23 posts

From 1279805843:

Salut,
JE viens de tester ton fichier, adapter à mon site, et maleurheusement, il n'y a pas d'image qui s'affiche ...
chez toi bien ?


J'ai mis 604 en permission du fichier ça vient peut-être de ça ?

#10
fly_in_the_sky

    PrestaShop Apprentice

  • Members
  • PipPip
  • 134 posts
Heu ... 604 ?, de quel permission tu parles ? dans quel fichier ? (dans ton htaccess, le chiffre 604 n'apparait pas ... )
merci de me donner plus de détails...
Nicolas
Nicolas Deru
www.casse-noisettes.be/shop
Boutique de jeux et jouets éthiques, en bois, fabriquer en Europe.

#11
success3

    PrestaShop Newbie

  • Members
  • Pip
  • 23 posts

From 1279878197:

Heu ... 604 ?, de quel permission tu parles ? dans quel fichier ? (dans ton htaccess, le chiffre 604 n'apparait pas ... )
merci de me donner plus de détails...
Nicolas


Non c'est les permissions "Chmod" attribués aux fichiers

Plus détails ici

Connecte-toi via ton FTP (moi j'utilise Filezilla) à l'emplacement de ton fichier .htaccess
Fais un clic droit sur celui-ci
Vas dans "Permissions du fichier"
Dans Valeur numérique écris : 604
Clic sur OK et tu verra à droite de ton fichier (la colone permission) apparaître les lettres suivantes :
-rw----r--


Et voila ;)

#12
overdoze

    PrestaShop Apprentice

  • Members
  • PipPip
  • 143 posts
Bonjour
ça fait plus de'une semaine que je bataille avec l'url rewriting mais sans succès.
ma boutique est installée sur un serveur IIS avec php 5, PS 1.2.5.
j'ai
1-configurer le module url canonique pour ma boutique www.monsite.com
2-activé le url rewriting
3-générer fichier .htaccess a travers BO

==>pas d'images des produits en plus des erreurs 404 (page not found)
je me sèche vraiment
un coup de main
merci

#13
oliv33

    PrestaShop Newbie

  • Members
  • Pip
  • 15 posts
BOnsoir

IMPOSSIBLE de trouver ce fichier htaccess. ou est-il placé svp ? :)

Merci

#14
marty69

    PrestaShop Addict

  • Members
  • PipPipPip
  • 787 posts
ce fichier n'existe pas.
créer un fihier .htaccess vide à la racine, donner les droits en écritude et générer le fichier depuis le backoffice

#15
groumph94

    PrestaShop Newbie

  • Members
  • Pip
  • 17 posts
Pas de pb pour la génération du .htacess mais direct en 404 après activation de l'url rewriting.
Je suis en local sous ubuntu avec une 1.3.2.3 toute neuve et mod_rewrite est bien activé.
Il affiche bien la prise en compte de la modif mais curieusement il ne modifie pas le .htaccess (que j'ai laissé en 666 pour l'activation).

J'ai essayé en ajoutant les instructions de base à la mimine mais ça ne change rien.
RewriteEngine on
RewriteBase /

Ca me donne des écritures access.log comme :
 127.0.0.1 - - [13/Nov/2010:17:25:42 +0100] "GET /pshop/9-36-medium/ecouteurs-a-isolation-sonore-shure-se210.jpg HTTP/1.1" 404 510 "http://localhost/pshop/3-accessoires-ipod" "Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9.2.12) Gecko/20101026 Firefox/3.6.12" 


avec un error.log comme :
 [Sat Nov 13 17:25:42 2010] [error] [client 127.0.0.1] File does not exist: /home/ws36/www/img, referer: http://localhost/pshop/3-accessoires-ipod 


Pas très logique ça.
Au passage, je vois des tartines de
 Warning:  Directive 'register_long_arrays' is deprecated in PHP 5.3 and greater in Unknown on line 0


Warning: Directive 'magic_quotes_gpc' is deprecated in PHP 5.3 and greater in Unknown on line 0


Logiques par rapport aux 404, mais moins par rapport au code .. bon ... ce sera pour la 1.4 ..
Plus tu pédales moins fort, moins t'avances plus vite.

#16
groumph94

    PrestaShop Newbie

  • Members
  • Pip
  • 17 posts
Une solution :
J'ai désactivé l'url rewriting, supprimé et recréé le .htaccess, réactivé le rewriting, regénéré le .htaccess ... et c'est OK.
Je ne sais pas ce qui s'est passé lors de la première génération du fichier mais le problème est résolu.
Voilà, si ça peut servir à qqun ...
Plus tu pédales moins fort, moins t'avances plus vite.

#17
manuman73

    PrestaShop Newbie

  • Members
  • Pip
  • 1 posts
1) J'ai utilisé le script de success3 que je remercie au passage
2) J'ai mis le fichier en remote en CHMOD 666 (permission d'écriture sur le fichier .htaccess)
3) ça fonctionnait mais je n'avais pas les photos comme quelques uns ci-dessus
4) Je suis allé dans le générateur de .htaccess, j'ai regénéré le fichier et du coup ça fonctionne ;-)

encore merci à Success3 ;-)

#18
chounpit

    PrestaShop Newbie

  • Members
  • Pip
  • 3 posts
Bonjour à tous,
je me colle au sujet car j'ai un problème connexe :

depuis mes tentatives depuis une semaine de créer mon .htaccess j'ai une requete intempestive de mot de passe FTP qui s'affiche à l'ouverture de l'url racine de mon site :
www.replicart-wood.com

j'ai suivi les instructions de "groumph94" et j'ai effectivement réussi à réfénérer mon .htaccess et la réécriture des url est ON, mais mon problème persiste !

quelqu'un peut-il m'aider ?