Posts Tagged ‘Mysql’

Tuto : installer un serveur dédié (linux)

// août 19th, 2009 // No Comments » // Tutoriaux

Aujourd’hui, on va s’intéresser à l’installation et la configuration d’un serveur dédié sous linux. Normalement, si vous êtes arrivé ici, c’est que vous avez un serveur dédié, mais que vous ne savez plus quoi faire maintenant !

On va y remédier maintenant.

1. Entrer en communication avec le serveur

On va commencer par ça (et pas spirituellement), on pourra comme ça le manipuler à distance. Pour ça on va utiliser une communication ssh : c’est ce qui nous permettra de donner les commandes à éxécuter. Si vous êtes sous Windows, Putty fera très bien l’affaire et sous Mac, ssh est déjà installé et vous pouvez l’utiliser via le terminal.

Maintenant, vous aurez besoin de trois choses :

  • l’adresse du serveur
  • le nom d’utilisateur (en général root)
  • le mot de passe

Entrez ces informations dans Putty ou tapez ssh -l login addresseDuServeur puis votre mot de passe.

Bien, maintenant, vous êtes dans le terminal du votre serveur et on va installer les différents paquets linux. Je vais supposer pour la suite que l’on est sur une distribution qui utilise la commande yum. (d’autre utilisent apt).

2. Installation du serveur ftp

On arrive à papoter avec le serveur, mais c’est quand même mieux de pouvoir lui envoyer des fichiers ! On va donc installer vsftp : yum install vsftpd.

Vsftp utilise les utilisateur de la machine pour l’authentification, on va donc créer un utilisateur spécial pour pouvoir manipuler des fichiers via ftp.

Avant tous, on va faire le répertoire qui va contenir les fichiers web (et qui sera donc, accessible par ftp). On vérifie s’il existe : ls /var

On obtient alors la liste des fichiers et répertoires à l’intérieur de /var, il faut vérifier si le répertoire www existe. Sinon, on le crée : mkdir /var/www

Bien, maintenant on vérifie que l’on a bien une structure de site, sinon on la créer comme avant. (dossiers /var/www/httpdocs et /var/www/httpsdocs.

On peut créer l’utilisateur et lui donner comme répertoire : /var/www
useradd ftp-user -d /var/www.

Puis on fixe un mot de passe :
passwd ftp-user

On a tous maintenant ! Normalement, votre site est accessible via ftp.
(Si ça ne marche toujours pas, vous pouvez toujours vous assurer que le daemon ftp est actif : /etc/init.d/vsftpd start)

3. Installation du serveur Apache

On passe maintenant à Apache, et on va suivre les même étapes :
yum install httpd

Il faut maintenant configurer le serveur pour qu’il accepte les bons noms de domaine. Pour ça on va utiliser des virtual hosts pour pouvoir héberger plusieurs sites.

Petit point de détail avant, vu que l’on va faire de l’édition de texte, on va prendre un petit éditeur pratique :
yum install nano

Puis on passe à la configuration :
nano /etc/httpd/conf/httpd.conf

Et à la fin du fichier, placez :
Include /etc/httpd/conf.d/vhosts.conf

Puis créez le dit fichier et éditez-le :
nano /etc/httpd/conf.d/vhosts.conf

On va dire que l’on accepte les virtual host puis on les configure :
NameVirtualHost *:80

<VirtualHost *:80>
ServerName monNomDeDomaine
DocumentRoot /var/www/httpdocs/monNomDeDomaine

</VirtualHost>

Maintenant que c’est fait, on va pouvoir relancer Apache pour qu’il prenne en compte la configuration :
apachectl restart

Votre nom de domaine est maintenant accessible depuis internet (dossier : /var/www/httpdocs/monNomDeDomaine)

4. Installer PHP

On peut maintenant afficher un site en html, mais avec PHP, c’est quand même mieux !

On va faire simple et rapide : <code>yum install php5</code>

C’est fait !! ;)

(J’aime bien quand c’est comme ça)

5. Installer MySQL

On va donc installer MySQL en client et en serveur (et c’est aussi dur que pour PHP !) :
yum install mysql mysql-server

Puis on s’assure que le daemon est bien lancé : service mysqld restart

Vu que les deux dernières parties étaient extrêmement difficiles, on va continuer un peut plus loin en installant phpMyAdmin, c’est quand même plus pratique !

NB : si vous avez besoin de spécifier l’hôte du serveur MySQL pour d’autre application, c’est localhost.

6. Installer phpMyAdmin

Pour commencer, on va télécharger phpMyAdmin ! En ligne de commande, ça donne :
cd /home
mkdir phpMyAdmin
cd phpMyAdmin
wget http://sourceforge.net/projects/phpmyadmin/files/phpMyAdmin/3.2.1/phpMyAdmin-3.2.1-all-languages.tar.gz/download#!md5!55cbc94ba827a84b2d0a99dd596069fc

Maintenant, on peut dézipper l’archive : tar xvfz phpMyAdmin*
On doit avoir tous les fichiers, il ne reste plus qu’a les déplacer au bon endroit :
mv /home/phpMyAdmin /var/www/httpdocs/phpMyAdmin

Il faut maintenant configurer Apache pour définir l’endroit où l’on pourra y accéder (/etc/httpd/conf.d/vhosts.conf) :

<VirtualHost *:80>
ServerNamer phpMyAdmin.monNomDeDomaine
DocumentRoot /var/www/httpdocs/phpMyAdmin
<Directory /var/www/httpdocs/phpMyAdmin>
AuthType Basic
AuthName "PhpMyAdmin"
AuthUserFile /etc/httpd/users/phpMyAdmin
Require valid-user
</Directory>
</VirtualHost>

Comme vous avez pu le voir, il y a des lignes en plus : elle concernent l’authentification. Effectivement, ce serait bête que ce soit un endroit facile d’accès !
On va donc faire les fichiers d’authentifications :
cd /etc/httpd
mkdir users
cd users
htpasswd -c phpMyAdmin monLogin
apachectl restart

On peut donc y accéder maintenant par : http://phpMyAdmin.monNomDeDomaine.
Mais, il reste encore à configurer l’accès de phpMyAdmin. Personnellement, je préfère qu’il me demande le mot de passe à chaque fois, donc, on va configurer ça :
cp /var/www/httpdocs/phpMyAdmin/config.sample.inc.php /var/www/httpdocs/phpMyAdmin/config.inc.php
nano /var/www/httpdocs/phpMyAdmin/config.inc.php

Puis remplacez $cfg['Servers'][$i]['auth_type'] = 'cookie'; par :
$cfg['Servers'][$i]['user'] = 'root';
$cfg['Servers'][$i]['password'] = 'cbb74bc'; // votre mot de passe
$cfg['Servers'][$i]['auth_type'] = 'config';

7. Fin

Et voilà, le tour est joué ! Maintenant, vous avez un serveur Apache avec PHP/MySQL.

Tuto : Installer php5 et mysql sur Mac OS X

// août 3rd, 2009 // 1 Comment » // Tutoriaux

Voilà la suite du premier tutorial sur l’installation d’un environnement web sur un Mac OS X Leopard. On avait vu avant comment installer Apache via Macports, maintenant, on passe à MySQL et PHP5.

Installations de PHP 5 et Mysql:

On commence avec notre bon ami Macports :

port install php5 mysql5 mysql5-server

Mysql5-server va servir pour la partie serveur de mysql et msql5 pour la partie client.
Maintenant, on va configurer tout ça et tous se passe dans :

/opt/local/etc/php5

Le fichier qui nous intéresse, c’est php.ini, je vous conseille un petit backup : une erreur est si vite arrivée ;).
Il n’y a pas grand chose à configurer, mais il y a quelques paramètres à changer pour faciliter le développement :

  • error_reporting = E_ALL : permet d’obtenir toutes les erreurs et informations de php, ça peut être pratique pour être très rigoureux sur son code PHP
  • display_errors = On : affiche les erreurs sur les pages HTML. Très pratique pour débugger, mais attention, sur les sites de productions, il faut absolument le désactiver sinon les utilisateurs pourront accéder à des informations sensibles ! Ce serait plutôt dommage…
  • log_errors = On et error_log = chemin du fichier log : personnellement, j’aime bien avoir une trace dans un fichier log des erreurs…

Normalement, on aura plus besoin de toucher à ce fichier et on est prêt pour relancer Apache pour prendre en compte la configuration :

/opt/local/apache2/bin/apachectl restart

Maintenant, vous pouvez faire un petit test et voir que votre php est bien installé, pour ça, placez

Les éxécutables de MySQL se trouvent dans : /opt/local/bin, vous aurez besoin de lancer le daemon de MySQL pour pouvoir utiliser la base de donnée : /opt/local/bin/mysqld_safe5& (n’oubliez pas le & à la fin pour lancer le processus en fond et récupérer le contrôle du terminal)

A ce stade , vous pouvez jouer avec la ligne de commande de mysql : /opt/local/bin/mysql5 -u root et en même temps tester que l’installation s’est bien déroulée!

Point de détail, mais qui reste important : le socket MySQL n’est pas à l’endroit défini par défaut, il se peut que vous ayez besoin pour certaines applications de définir le chemin vers le bon socket.

Le fichier de configuration de MySQL(/opt/local/etc/mysql5/my.cnf) le configure par défaut dans : /opt/local/var/run/mysql5/mysqld.sock

C’est important de savoir où se trouve le socket, car si vous voulez faire du Ruby on Rails, vous aurez besoin de donner le chemin vers le socket MySQL.

Maintenant, on a MySQL et PHP5, c’est bien, mais ce serait plus facile avec un phpMyAdmin pour utiliser la base de données, allez voir ici (lien direct vers la version 3.2.0.1).

Décompressez l’archive dans l’arborescence de votre site, puis il reste à le configurer : copier le fichier phpMyAdmin/config.inc.sample.php vers phpMyAdmin/config.inc.php

Il ne reste qu’à configurer l’authentification, personnellement, je retire l’utilisation des cookies.
Pour ça, je met sous les lignes /* Authentication type */ :
$cfg['Servers'][$i]['user'] = 'user';
$cfg['Servers'][$i]['password'] = 'password';

Maintenant, tous est prêt et vous pouvez utiliser MySQL avec phpMyAdmin !

PHVsPjxsaT48c3Ryb25nPndvb19hYm91dDwvc3Ryb25nPiAtIEFtYXRldXIgZGUgbm91dmVhdXTDqXMsIGRlIGdhZGdldHMgZXQgZGUgdGVjaG5vbG9naWUsIGonYWltZSBwcm9ncmFtbWVyIGRlcyBqZXV4IHZpZMOpb3MsIGRlcyBzaXRlcyBldCBkZXMgcGx1Z2lucyBXb3JkcHJlc3MuICBCb25uZSB2aXNpdGUgITwvbGk+PGxpPjxzdHJvbmc+d29vX2Fib3V0bGluazwvc3Ryb25nPiAtIGh0dHA6Ly9mcmVkcG9pbnR6ZXJvLmNvbS9hLXByb3BvczwvbGk+PGxpPjxzdHJvbmc+d29vX2Fkc19yb3RhdGU8L3N0cm9uZz4gLSB0cnVlPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfMTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtMS5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF9pbWFnZV8yPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tL2Fkcy93b290aGVtZXMtMTI1eDEyNS0yLmdpZjwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX2ltYWdlXzM8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vYWRzL3dvb3RoZW1lcy0xMjV4MTI1LTMuZ2lmPC9saT48bGk+PHN0cm9uZz53b29fYWRfaW1hZ2VfNDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbS9hZHMvd29vdGhlbWVzLTEyNXgxMjUtNC5naWY8L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfMTwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FkX3VybF8yPC9zdHJvbmc+IC0gaHR0cDovL3d3dy53b290aGVtZXMuY29tPC9saT48bGk+PHN0cm9uZz53b29fYWRfdXJsXzM8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb208L2xpPjxsaT48c3Ryb25nPndvb19hZF91cmxfNDwvc3Ryb25nPiAtIGh0dHA6Ly93d3cud29vdGhlbWVzLmNvbTwvbGk+PGxpPjxzdHJvbmc+d29vX2FsdF9zdHlsZXNoZWV0PC9zdHJvbmc+IC0gdGVhbC5jc3M8L2xpPjxsaT48c3Ryb25nPndvb19jdXN0b21fY3NzPC9zdHJvbmc+IC0gPC9saT48bGk+PHN0cm9uZz53b29fY3VzdG9tX2Zhdmljb248L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19mZWVkYnVybmVyX3VybDwvc3Ryb25nPiAtIGh0dHA6Ly9mZWVkcy5mZWVkYnVybmVyLmNvbS9MZVByZXNxdWVCbG9nRGVGcmVkcG9pbnR6ZXJvPC9saT48bGk+PHN0cm9uZz53b29fZ29vZ2xlX2FuYWx5dGljczwvc3Ryb25nPiAtIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCnZhciBnYUpzSG9zdCA9ICgoImh0dHBzOiIgPT0gZG9jdW1lbnQubG9jYXRpb24ucHJvdG9jb2wpID8gImh0dHBzOi8vc3NsLiIgOiAiaHR0cDovL3d3dy4iKTsNCmRvY3VtZW50LndyaXRlKHVuZXNjYXBlKCIlM0NzY3JpcHQgc3JjPSciICsgZ2FKc0hvc3QgKyAiZ29vZ2xlLWFuYWx5dGljcy5jb20vZ2EuanMnIHR5cGU9J3RleHQvamF2YXNjcmlwdCclM0UlM0Mvc2NyaXB0JTNFIikpOw0KPC9zY3JpcHQ+DQo8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQp0cnkgew0KdmFyIHBhZ2VUcmFja2VyID0gX2dhdC5fZ2V0VHJhY2tlcigiVUEtMTAwMzM1NDUtMSIpOw0KcGFnZVRyYWNrZXIuX3RyYWNrUGFnZXZpZXcoKTsNCn0gY2F0Y2goZXJyKSB7fTwvc2NyaXB0PjwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWU8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfYXJjaGl2ZXM8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2ZsaWNrcl9jb3VudDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfZmxpY2tyX3VybDwvc3Ryb25nPiAtIDwvbGk+PGxpPjxzdHJvbmc+d29vX2hvbWVfZmxpY2tyX3VzZXI8L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX2xpZmVzdHJlYW08L3N0cm9uZz4gLSA8L2xpPjxsaT48c3Ryb25nPndvb19ob21lX3Bvc3RzPC9zdHJvbmc+IC0gMTwvbGk+PGxpPjxzdHJvbmc+d29vX2xvZ288L3N0cm9uZz4gLSBodHRwOi8vZnJlZHBvaW50emVyby5jb20vd3AtY29udGVudC93b29fdXBsb2Fkcy8zLWxvZ28ucG5nPC9saT48bGk+PHN0cm9uZz53b29fbWFpbnJpZ2h0PC9zdHJvbmc+IC0gZmFsc2U8L2xpPjxsaT48c3Ryb25nPndvb19tYW51YWw8L3N0cm9uZz4gLSBodHRwOi8vd3d3Lndvb3RoZW1lcy5jb20vc3VwcG9ydC90aGVtZS1kb2N1bWVudGF0aW9uL2lycmVzaXN0aWJsZS88L2xpPjxsaT48c3Ryb25nPndvb19uYXY8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3Nob3J0bmFtZTwvc3Ryb25nPiAtIHdvbzwvbGk+PGxpPjxzdHJvbmc+d29vX3RhYnM8L3N0cm9uZz4gLSBmYWxzZTwvbGk+PGxpPjxzdHJvbmc+d29vX3RoZW1lbmFtZTwvc3Ryb25nPiAtIElycmVzaXN0aWJsZTwvbGk+PGxpPjxzdHJvbmc+d29vX3VwbG9hZHM8L3N0cm9uZz4gLSBodHRwOi8vbG9jYWxob3N0L35mcmVkZXJpY3ZhdWNoZWxsZXMvUHJvamV0cy9TaXRlcy9mcmVkcG9pbnR6ZXJvL3YxL3NpdGUvd3AtY29udGVudC93b29fdXBsb2Fkcy8zLWxvZ28ucG5nPC9saT48bGk+PHN0cm9uZz53b29fdmlkZW88L3N0cm9uZz4gLSB0cnVlPC9saT48L3VsPg==