Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
lamp_plus [Le 18/05/2007, 21:59] _Enchained suppression partie SSL et lien vers le tutoriel adapté |
— (Version actuelle) | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | {{tag>feisty serveur brouillon}} | ||
- | ---- | ||
- | |||
- | ====== Serveur LAMP - Aller plus loin ====== | ||
- | >page en cours de rédaction | ||
- | >La partie sur la perte du mot de passe MySQL est encore à revoir | ||
- | |||
- | ===== Sécuriser Apache2 ===== | ||
- | Consultez le tutoriel [[:tutoriel:securiser_apache2|Sécuriser un serveur Apache2]] | ||
- | |||
- | ===== Sécuriser Apache2 avec SSL ===== | ||
- | Consultez le tutoriel [[:tutoriel:Sécuriser Apache2 avec SSL]] | ||
- | |||
- | ===== Les Hôtes Virtuels (VirtualHost) ===== | ||
- | Consultez le tutoriel sur [[:tutoriel:virtualhosts_avec_apache2|Les hôtes virtuels (virtualhosts) avec Apache2]] | ||
- | |||
- | [[:tutoriel:virtualhosts_avec_apache2_et_dyndns|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 [[http://www.dyndns.com/|DynDNS]] | ||
- | |||
- | ===== Autoriser l'utilisation de répertoires web personnels ===== | ||
- | 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 | ||
- | |||
- | ===== Les jeux de caractères (encodages) du Serveur Web Apache2 ===== | ||
- | 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'' : | ||
- | <file>AddDefaultCharset UTF-8</file> | ||
- | |||
- | 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é ==== | ||
- | [[:tutoriel:comment_editer_un_fichier|Éditez le fichier]] **/etc/apache2/conf.d/charset** de façon à ce qu'il contienne : | ||
- | <file>AddDefaultCharset off</file> | ||
- | |||
- | ==== Décider du jeu de caractères à utiliser par défaut ==== | ||
- | Si vous voulez forcer l'utilsation d'un encodage particulier, encore une fois, [[:tutoriel:comment_editer_un_fichier|éditez le fichier]] **/etc/apache2/conf.d/charset** de façon à ce qu'il contienne : | ||
- | <file>AddDefaultCharset <le charset voulu></file> | ||
- | |||
- | __Exemple :__ pour l'encodage **ISO-8859-1** : | ||
- | <file>AddDefaultCharset ISO-8859-1</file> | ||
- | |||
- | >**Rappel : **Si vous modifiez un fichier de configuration d'Apache, il faudra lui donner l'ordre de recharger sa configuration pour que les moddifications soient prises en compte avec la commande : | ||
- | ><code>sudo /etc/init.d/apache2 reload</code> | ||
- | >N'oubliez pas non plus de vider le cache de votre navigateur | ||
- | |||
- | |||
- | ===== Utiliser la réécriture d'URL (URL rewriting) ===== | ||
- | 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 ») | ||
- | |||
- | ===== III. Perte du mot de passe mysql ===== | ||
- | Dans cette section, nous vous proposons deux méthodes bien distinctes pour que vous puissiez re-créer le mot de passe de l'utilisateur Root de Mysql si vous l'avez perdu. | ||
- | |||
- | Avant toute chose, il convient d'arrêter le Serveur Mysql : | ||
- | <code>sudo /etc/init.d/mysql stop</code> | ||
- | ==== a. Première méthode ==== | ||
- | Il faut commencer par créer un fichier contenant le nouveau mot de passe que vous voulez attribuer à l'utilisateur Root de Mysql. | ||
- | |||
- | **Ps :** Dans la mesure ou ce mot de passe est stocké en clair, il est vivement recommandé de le mettre dans un répertoire suffisamment sûr. N'oubliez pas de supprimer le fichier une fois la procédure terminée. | ||
- | <code>echo "SET PASSWORD FOR 'root'@'localhost' = PASSWORD('Nouveau mot de passe');" > mdp.txt</code> | ||
- | On redémarre le server mysql en root : | ||
- | <code>sudo mysqld --user=root --init-file=/chemin/vers/le/fichier/mdp.txt</code> | ||
- | où | ||
- | <code>sudo mysqld_safe --user=root --init-file=/chemin/vers/le/fichier/mdp.txt</code> | ||
- | Et voilà, votre nouveau mot de passe est pris en compte. | ||
- | On stoppe à nouveau le serveur lancé : | ||
- | <code>/etc/init.d/mysql stop</code> | ||
- | Si ''ps auxww|grep mysql'' vous renvoie quelque chose, vous pouvez faire | ||
- | <code>killall mysqld</code> | ||
- | Où sinon, rebootez votre machine. | ||
- | |||
- | Et voilà, il ne reste plus qu'a relancez le service mysql proprement : | ||
- | <code>/etc/init.d/mysql start</code> | ||
- | Ceci est inutile si vous venez de rebooter votre machine. | ||
- | ==== b. Deuxième méthode ==== | ||
- | Vous pouvez trouver une méthode alternative ici : [[http://www.nuxwin.com/articles/view.php/13]] | ||
- | |||
- | Si mysql vous indique qu'il ne veut pas démarrer en root, Changez le II. en : | ||
- | <code>/usr/sbin/mysqld --user=root --skip-grant-tables &</code> | ||
- | |||
- | ---- | ||
- | |||
- | //Contributeurs : [[utilisateurs:_Enchained]] ,[[utilisateurs:anthony43]] // |