cmsms – pretty_urls, url rewriting, htacess et sous dossier
Lors de la mise en place d’un site basé sur CMSMS, vous pouvez être amené à installer le CMS dans un sous dossier, par exemple : http://www.domaine.tld/cmsms/.
Hors, dans ce cas de figure, la configuration des « Pretty-URLs » comme indiqué ici :
http://wiki.cmsmadesimple.org/index.php/FAQ/Installation/Pretty_URLs#Pretty_URL.27s
ne fonctionnera pas.
En effet, le système va considérer que le site est systématiquement à la racine du domaine. Dans le cas présent, en mettant en place les « Pretty_URLs » comme indiqué dans le fichier de configuration, j’ai créé un fichier .htaccess comme recommandé pour utiliser les noms de page avec .htm :
[perl] Options +FollowSymLinks
RewriteEngine on
RewriteBase /
# 301 Redirect all requests that don’t contain a dot or trailing slash to
# include a trailing slash
# except for form POSTS
# RewriteCond %{REQUEST_URI} !/$
# RewriteCond %{REQUEST_URI} !\.
# RewriteCond %{REQUEST_METHOD} !POST$
# RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
# Rewrites urls in the form of /parent/child/
# but only rewrites if the requested URL is not a file or directory
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+).htm$ index.php?page=$1 [QSA] [/perl]
Hors, dès l’activation, mes pages revenaient en erreur. Pour corriger ceci, il faut modifier la dernière règle de rewriting en y incluant l’emplacement dans lequel vous avez installé cmsms. Si par exemple vous etes dans ce cas de figure « http://www.domaine.tld/cmsms/ », votre fichier .htaccess devra être modifié comme suit (voir la dernière ligne) :
[perl] Options +FollowSymLinks
RewriteEngine on
RewriteBase /
# 301 Redirect all requests that don’t contain a dot or trailing slash to
# include a trailing slash
# except for form POSTS
# RewriteCond %{REQUEST_URI} !/$
# RewriteCond %{REQUEST_URI} !\.
# RewriteCond %{REQUEST_METHOD} !POST$
# RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]
# Rewrites urls in the form of /parent/child/
# but only rewrites if the requested URL is not a file or directory
RewriteRule ^News/rss(.+)$ index.php?page=News/rss$1 [S=1]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+).htm$ /cmsms/index.php?page=$1 [QSA][/perl]
Le problème sera ainsi résolu et vous disposerez des « Pretty-URLs » basée sur l’URL rewriting, qui peuvent optimiser le référencement de votre site.
![]()
1 Commentaire to cmsms – pretty_urls, url rewriting, htacess et sous dossier
Ajouter un commentaire
Pages
- À propos
- Alexandre Blanc Experience or work background
- Connected=hacked, cloud=leak, why
- Keeping track for my speaking events / appearances
- My take on Zero Trust – SP 800-207
- Openvpn and pihole on OVH VPS Server FAQ
- Raspberry 3 router project FAQ
- Spotting LinkedIn fake profiles, the tail of industrial spying, should I trust this contact ?
Search this Site
Archive
- août 2026
- avril 2025
- juin 2024
- mai 2024
- mars 2024
- février 2022
- janvier 2022
- octobre 2021
- septembre 2021
- mai 2021
- octobre 2020
- juin 2020
- avril 2020
- avril 2019
- janvier 2019
- juin 2018
- mars 2017
- octobre 2016
- août 2016
- mai 2016
- septembre 2015
- mai 2015
- février 2015
- novembre 2014
- septembre 2014
- août 2014
- janvier 2013
- décembre 2012
- juillet 2012
- janvier 2012
- novembre 2011
- octobre 2011
- mai 2011
- avril 2011
- mars 2011
- février 2011
- janvier 2011
- décembre 2010
- novembre 2010
- octobre 2010
- septembre 2010
Merci pour ce tuto, cependant, sais-tu comment activer les pretty urls pour le détail des événements, dans module Calendar ??? Car il crée des adresses horribles du type » index.php?mact=Calendar,cntnt01,default,0&cntnt01return_id=18&cntnt01detailpage=17&cntnt01year=2011&cntnt01month=10&cntnt01day=31&cntnt01display=list&cntnt01return_link=1&cntnt01detail=1&cntnt01lang=fr_FR&cntnt01returnid=17 » ce qui n’est ni lisible, ni url-friendly :/
Merci :)