Définition
Création et utilisation de fichier .htaccess sur cPanel
Le fichier .htaccess est un fichier de configuration qui contrôle la manière dont un serveur Web répond à diverses demandes. Il est pris en charge par plusieurs serveurs Web, y compris le serveur Web Apache populaire utilisé par la plupart des fournisseurs d'hébergement Web commerciaux.
Les fichiers .htaccess fonctionnent au niveau d'un répertoire, ce qui leur permet de remplacer les paramètres de configuration globaux des directives .htaccess plus haut dans l'arborescence des répertoires.
Dans ce tutoriel vous allez apprendre à créer et utiliser un fichier htaccess.
Procédure
Création et utilisation de fichier .htaccess sur cPanel:
En théorie, chaque dossier (répertoire) de votre hébergement cPanel pourrait en avoir un fichier .htaccess. en règle générale, il y en a un à la racine de votre hébergement, le dossier : public_html
Pour créer un fichier htaccess dans votre hébergement cPanel :
- Connectez-vous à votre cPanel
- Cliquez sur l'icône "Gestionnaire de fichiers"

- L'affichage des fichiers systèmes est par défaut désactivé dans cPanel, pour l'activer cliquez sur l'icône "Paramètres" dans le gestionnaire de fichiers :

- Cochez ensuite l'option "Afficher les fichiers masqués (dotfiles)" et cliquez sur le bouton "Save"

- Ensuite pour créer le fichier .htaccess, depuis la barre d'outil du gestionnaire de fichiers cliquez sur "+Fichier"

- Une petite fenêtre va s'ouvrir, taper .htaccess dans le champ "nom du fichier" et cliquer sur le bouton "Create New File"

- Un fichier .htaccess va être créé dans le dossier, pour l'éditer faites un clic droit à l'aide du bouton de la souris et cliquer sur le menu "Edit"

- Dans la fenêtre suivante cliquez sur le bouton Edit

- Le fichier va s'ouvrir dans l'éditeur de code, taper les directives nécessaires :

- Enregistrer le fichier en appuyant sur le bouton "Enregistrer les modifications" et fermer la fenêtre en cliquant sur Fermer

Voici quelques directives htaccess utile à apprendre :
Rediriger une page de votre site vers une autre :
Redirect 301 /anciennepage.php http://www.domaine.com/nouvellepage.php
Rediriger un site entier vers une nouvelle URL:
Redirect 301 / http://www.domaine.com/
Rediriger un site entier vers un sous-dossier, utile pour rediriger le site principal de votre cPanel (publié dans "public_html" ) vers le dossier d'un domaine supplémentaire :
Redirect 301 / http://www.domaine.com/dossier/
Rediriger un sous-dossier vers une autre URL:
Redirect 301 /sous-dossier http://www.domaine.com/
Cette directive redirigera tout fichier avec l'extension .html pour utiliser le même nom de fichier mais utiliser l'extension .php à la place.
RedirectMatch 301 (.*)\.html$ http://www.domain.com$1.php
- Vous pouvez aussi faire des 301 redirect avec de l'URL rewriting
#Rediriger l'ancien domaine vers le nouveau
RewriteEngine on
RewriteBase /
RewriteRule (.*) http://www.nouveaudomaine.com/$1 [R=301,L]
#Rediriger vers www.
RewriteEngine on
RewriteBase /
rewritecond %{http_host} ^domaine.com [nc]
rewriterule ^(.*)$ http://www.domaine.com/$1 [r=301,nc]
#Rediriger vers la version www. dans un sous-dossier
RewriteEngine on
RewriteBase /
RewriteCond %{HTTP_HOST} domaine.com [NC]
RewriteRule ^(.*)$ http://www.domaine.com/dossier/index.html [R=301,NC]
#Rediriger l'ancien site vers le nouveau en préservant les liens :
Options +FollowSymLinks
RewriteEngine On
RewriteRule ^(.*) http://www.newdomain.com%{REQUEST_URI} [R=302,NC]
#Rediriger l'ancien domaine contenu dans un dossier vers le nouveau avec ou sans répertoire en préservant les liens :
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_URI} ^/dossier/(.*)$
RewriteRule ^(.*) http://www.nouveaudomaine.com/%1 [R=302,NC]
#Rediriger les URLs avec les paramètres (fichiers placés dans le dossier racine)
Exemple URL originale :
http://www.example.com/index.php?id=1
URL désirée :
http://www.example.com/nouvel-emplacement/
La syntaxe .htaccess :
RewriteEngine on
RewriteCond %{QUERY_STRING} id=1
RewriteRule ^index\.php$ /nouvel-emplacement/? [L,R=301]
Rediriger les URLs avec les paramètres (fichiers placés dans un sous-dossier)
URL originale :
http://www.example.com/sub-dir/index.php?id=1
URL souhaitée :
http://www.example.com/path-to-new-location/
La syntaxe .htaccess :
RewriteEngine on
RewriteCond %{QUERY_STRING} id=1
RewriteRule ^sub-dir/index\.php$ /path-to-new-location/? [L,R=301]
Rediriger la racine de votre site web vers le dossier "public", utile pour les Frameworks Symfony et Laravel :
RewriteEngine on
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
Conclusion :
Vous avez appris à créer et utiliser votre fichier htaccess dans votre hébergement cPanel; Le fichier .htaccess peut être utilisé pour exécuter des tâches liées au référencement telles que les redirections. Les redirections peuvent être utilisées pour éviter les messages d'erreur 404 et pour permettre aux robots des moteurs de recherche de savoir quelles pages ils doivent indexer.
N'hésitez pas à partager vos remarques et vos questions !
Trucs et astuces
Astuce :
Si le fichier htaccess n'est pas visible dans votre hébergement, connectez-vous à votre compte cPanel. Ensuite, allez dans Fichiers> Gestionnaire de fichiers. et assurez-vous d'avoir coché la case Afficher les fichiers cachés est coché.
.png)
Pour aller plus loin
Autres directives htaccess:
Vous pouvez découvrir d'autres directives htaccess sur les pages suivantes :
https://aide.lws.fr/a/974
https://aide.lws.fr/a/86