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 » et l'interprétation des .htaccess)

Si vous avez perdu votre mot de passe Root de MySQL, voir la section redefinir_de_force_le_mot_de_passe_de_root de la page mysql.


Contributeurs : M. DECLERCQ, _Enchained , anthony43, McPeter

  • lamp_plus.1206718211.txt.gz
  • Dernière modification: Le 18/04/2011, 14:42
  • (modification externe)