Cette page n'a pas encore d'étiquettes.
Apportez votre aide…

Ceci est une ancienne révision du document !



Serveur LAMP - Aller plus loin

Consultez le tutoriel Sécuriser un serveur Apache2

Consultez le tutoriel Sécuriser Apache2 avec SSL

Consultez le tutoriel sur Les hôtes virtuels (virtualhosts) avec Apache2

Supplément : mise en place d'hôtes virtuels sur son PC dans le cadre d'un développeur de page internet, souhaitant séparer des sections : Administration , Privée , Publique ; en utilisant un nom de domaine gratuit du type DynDNS

Chaque utilisateur de la machine peut mettre en ligne les documents de son choix en créant un répertoire nommé public_html dans son dossier personnel.

Par exemple, l'utilisateur toto créera le répertoire /home/toto/public_html.

Ensuite, n'importe qui pourra accèder au contenu web de ce répertoire depuis l'url : http://ip_de_la_machine/~toto/ (ou http://nom_de_domaine/~toto/ si la machine a un nom de domaine associé).

Pour avoir accès à cette fonction d'Apache2, il vous faut activer le module userdir et recharger la configuration du serveur :

sudo a2enmod userdir
sudo /etc/init.d/apache2 reload

Si dans vos pages web, les caractères accentués sont remplacés par des caractères incompréhensibles comme « � » ou « é », vous avez un problème avec les jeux de caractères (ou charset).

Par défaut, lorsqu'on installe le Serveur Web Apache2, c'est le jeu de caractères UTF-8 qui est utilisé. Vous pouvez le vérifier en regardant le contenu du fichier /etc/apache2/conf.d/charset :

AddDefaultCharset UTF-8

Ceci veut dire que le jeu de caractères qui sera ajouté à toutes les réponses qui n'ont aucun paramètre sur le type de contenu dans l'en-tête HTTP sera UTF-8. La directive AddDefaultCharset remplace le jeu de caractères spécifié dans le corps du document Web via la balise META.

En résumé, si votre fichier /etc/apache2/conf.d/charset contient AddDefaultCharset UTF-8 et que vous mettez dans votre page web la balise <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">, l'encodage qui sera envoyé sera UTF-8 et cela ne changera rien au problème d'encodage.

Pour résoudre ce problème plusieurs solutions s'offrent à vous :

Laisser le navigateur Web choisir l'encodage approprié

Éditez le fichier /etc/apache2/conf.d/charset de façon à ce qu'il contienne :

AddDefaultCharset off

Décider du jeu de caractères à utiliser par défaut

Si vous voulez forcer l'utilsation d'un encodage particulier, encore une fois, éditez le fichier /etc/apache2/conf.d/charset de façon à ce qu'il contienne :

AddDefaultCharset <le charset voulu>

Exemple : pour l'encodage ISO-8859-1 :

AddDefaultCharset ISO-8859-1
Rappel : Si vous modifiez un fichier de configuration d'Apache, il faudra lui donner l'ordre de recharger sa configuration pour que les modifications soient prises en compte avec la commande :
sudo /etc/init.d/apache2 reload


N'oubliez pas non plus de vider le cache de votre navigateur

Activez le module rewrite

sudo a2enmod rewrite

puis rechargez la configuration d'Apache

sudo /etc/init.d/apache2 reload

Vérifiez dans le fichier /etc/apache2/sites-available/default (ou dans vos fichiers d'hôtes virtuels) que la directive AllowOverride est :

AllowOverride All

(Le virtualhost de base d'Apache2 met cette directive à « None » par défaut et donc empêche l'utilisation de « l'url rewriting »)

Si vous avez perdu votre mot de passe Root de MySQL, voir la section comment redéfinir de force le mot de passe de root de la page mysql.


Contributeurs : M. DECLERCQ, _Enchained ,anthony43

  • lamp_plus.1191267092.txt.gz
  • Dernière modification: Le 27/11/2007, 11:50
  • (modification externe)