This page in: UNIQ74de47946f55848-pagenamepluslang-00000000-QINU - UNIQ74de47946f55848-pagenamepluslang-00000001-QINU - UNIQ74de47946f55848-pagenamepluslang-00000002-QINU - UNIQ74de47946f55848-pagenamepluslang-00000003-QINU - UNIQ74de47946f55848-pagenamepluslang-00000004-QINU - UNIQ74de47946f55848-pagenamepluslang-00000005-QINU - UNIQ74de47946f55848-pagenamepluslang-00000006-QINU - UNIQ74de47946f55848-pagenamepluslang-00000007-QINU - UNIQ74de47946f55848-pagenamepluslang-00000008-QINU - UNIQ74de47946f55848-pagenamepluslang-00000009-QINU - UNIQ74de47946f55848-pagenamepluslang-0000000A-QINU - UNIQ74de47946f55848-pagenamepluslang-0000000B-QINU - UNIQ74de47946f55848-pagenamepluslang-0000000C-QINU - UNIQ74de47946f55848-pagenamepluslang-0000000D-QINU UNIQ74de47946f55848-pagenamepluslang-0000000E-QINU

Contents

Foire Aux Questions

Choisissez l'item qui vous intéresse :

URL élégantes

Voici une méthode pour avoir des URLs plus élégante avec CMS Made Simple. Nous allons utiliser une technique appelé "ré-écriture d'urls" (URL Rewriting en Anglais) qui permet d'avoir des adresses de type

http://monsite.fr/ma_page.html

plutôt que :

http://monsite.fr/index.php?page=ma_page


Etape 0 - Terminer l'installation

Si vous lisez ceci, vous avez oublié l'activation de la ré-écriture d'URL lors de l'étape de configuration des paramètres facultatifs de la procédure d'installation.

Etape 1 - Fichier .htaccess

Le fichier .htaccess est nécessaire à la mise en place de la réécriture d'URLs. Pour le créer ou modifier le fichier .htaccess existant, vous pouvez vous inspirer du texte suivant. Certaines configurations de serveur vous obligent à ajouter 'RewriteBase /' après la commande 'RewriteEngine on'. Si votre installation de CMS Made Simple est dans un sous-répertoire, vous devrez remplacer RewriteBase / par RewriteBase /cms/ (où "cms" est le nom du sous-répertoire). Assurez-vous aussi de vérifier vos paramètres FTP pour transférer le fichier de codage: ASCII. (Pour ceux qui utilisent Dreamweaver, vous devez utiliser un autre logiciel FTP.)

Pas d'extension de fichier

La configuration suivante permet d'avoir des URLs sans extension de fichier. L'exemple :

http://monsite.fr/index.php?page=ma_page

deviendra :

http://monsite.fr/ma_page

Si l'option use_hierarchy est activée, les pages imbriquées (page de niveau différent de 0) auront une adresse du style :

http://monsite.fr/ma_section/ma_page


ATTTENTION Pour CMSms 1.10.x

Lire le le fichier CMSMS_config_reference.pdf du dossir /doc du CMS

Pour CMSms 1.9.x

http://forum.cmsmadesimple.org/index.php/topic,50005.msg238739.html#msg238739


Voici le code à mettre dans votre fichier .htaccess :

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
# Redirection 301 de toutes les demandes qui ne contiennent 
# pas un point ou un slash
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]

# Régles de réécriture pour la forme /parent/enfant/
# mais réécrit seulement si l'URL demandée n'est pas un fichier ou un répertoire
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+)$ index.php?page=$1 [QSA]

Page avec l'extension.html

La configuration suivante permet d'avoir des URLs avec l'extension ".html". L'exemple :

http://monsite.fr/index.php?page=ma_page

deviendra :

http://monsite.fr/ma_page.html

Si l'option use_hierarchy est activée, les pages imbriquées (page de niveau différent de 0) auront une adresse du style :

http://monsite.fr/ma_section/ma_page.html

Voici le code à mettre dans votre fichier .htaccess :

Options +FollowSymLinks
RewriteEngine on
RewriteBase /
# Redirection 301 de toutes les demandes qui ne contiennent 
# pas un point ou un slash
RewriteCond %{REQUEST_URI} !/$
RewriteCond %{REQUEST_URI} !\.
RewriteRule ^(.*) %{REQUEST_URI}/ [R=301,L]

# Régles de réécriture pour la forme /parent/enfant/
# mais réécrit seulement si l'URL demandée n'est pas un fichier ou un répertoire
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.+).htm$ index.php?page=$1 [QSA] 

Enregistrer le fichier (par exemple sous le nom : htaccess.txt) et le transférer à la racine de votre site ou dans le répertoire adéquat de CMS Lade Simple (en mode ASCII), ensuite renommer le fichier en ".htaccess" (attention le nom de fichier commence par un point !).

Note: si vous utilisez le module de "News" et que vous souhaitez publier un fil RSS vous aurez le problème suivant si vous utilisez une extension.

En principe, votre flux est disponible à l'adresse :

http://monsite.fr/News/rss 

mais avec l'option "mod_rewrite" activé, le serveur ne trouve plus votre flux RSS parce que :

http://monsite.fr/News/rss 

n'est pas réécrit en :

http://monsite.fr/index.php?page=News/rss. 

Vous pouvez résoudre le problème de deux façons :

  1. ajouter une règle juste avant la première règle de ré-écriture :
RewriteRule ^News/rss(.+)$ index.php?page=News/rss$1 [S=1]

Cela réécrit seulement les flux RSS de la manière dont vous avez besoin. Vous pouvez ajouter des extensions comme .XML ou .RSS

  1. utiliser une règle de réécriture plus large :
RewriteRule ^(.+)(.html)?$ index.php?page=$1 [QSA]

Maintenant, toutes les pages avec ou sans extension .html fonctionnent.


Etape 2 - Editer le fichier config.php

Maintenant, effectuez les modifications suivantes dans la partie "URL Settings" de votre fichier config.php.

(Note: Si vous avez déjà suivi les instructions d'installation pour mettre le fichier "config.php en lecture seule" il faudra modifier temporairement les droits des fichier en 666 ou 777; dans le cas contraire, la mise à jour du fichier config.php sera impossible.)

#------------
#URL Settings
#------------

#Show mod_rewrite URLs in the menu? You must enable 'use_hierarchy' for this to work for modules
$config['assume_mod_rewrite'] = true;

#Extension to use if you're using mod_rewrite for pretty URLs.
$config['page_extension'] = '/';

#If you don't use mod_rewrite, then would you like to use the built-in
#pretty url mechanism?  This will not work with IIS and the {metadata} tag
#should be in all of your templates before enabling.
$config['internal_pretty_urls'] = true;

#If you're using the internal pretty url mechanism or mod_rewrite, would you like to
#show urls in their hierarchy?  (ex. http://www.mysite.com/parent/parent/childpage)
$config['use_hierarchy'] = true;

#If using none of the above options, what should we be using for the query string
#variable?  (ex. http://www.mysite.com/index.php?page=somecontent)
$config['query_var'] = 'page';

Pour utiliser l'extension .html, remplacer '/' par '.html' dans la ligne $config['page_extension'] = '/';.

Etape 3 - Utilisation du code {metadata}

Ajouter le code {metadata} entre les balises <head> et </head> de votre template insèrera automatiquement la balise donnant la racine de votre site, afin que les chemins relatifs aux fichiers et aux images fonctionnent comme prévu.


L'option use_hierarchy (voir à l'étape 2) est activable dans ce fichier de configuration (config.php). Elle permet d'avoir des URLs spécifiques pour les pages imbriqués, par exemple :

http://monsite.fr/parent/enfant/ 

en opposition à :

http://monsite.fr/enfant

Ne vous inquiétez pas des changements d'URL que ces deux types de modifications permettent à CMS Made Simple de continuer à fonctionner.

Configuration de LightTPD

Pour utiliser LightTPD au lieu d'Apache, les paramètres de configurations suivant devraient fonctionner.

Editer le fichier de configuration "lighttpd.conf" avec le texte suivant :

url.rewrite-final = (
  "^/(admin)/(.*)$" => "/$1/$2",
  "^/([^.?]*)$" => "/index.php?page=$1"
)

En option : la configuration LightTPD fonctionne avec ou sans barres obliques (ex. /admin fonctionne), supporte /alias, /alias/, et /alias.htm pour accéder à la page

url.rewrite-final = (
 "^/(admin.*)$" => "/$1",
 "^/(uploads.*)$" => "/$1",
 "^/([^.?]*)(\.htm)$" => "/index.php?page=$1",
 "^/([^.?]*)$" => "/index.php?page=$1"
)


This page in: English - Deutsch - Español - Français - Italiano - Lietuvių - Nederlands - Norsk - Polski - Česky - Русский - Svenska - Tiếng Việt - عربي - 日本語 简体中文

FAQ/Installation/Pretty URLs/fr

From CMSMS

A2 Hosting