Debian : créer un environnement de développement
accueil >
Cours >
SERVEUR >
Debian : créer un environnement de développement
Cours / tutoriel écrit le 16-09-2010 par sky
Voici une procédure pour mettre en place un environnement SIMPLE de développement WEB sous Debian ou Ubuntu.
Ceci est pour des utilisateurs qui ont un minimum de connaissances d'utilisation de linux.
C'est une simple procédure "pas à pas" qui décrit comment mettre en place un environnement de développement permettant l'installation de multiples sites.
Je part du principe que vous commencer sur une installation propre de Debian ou Ubuntu avec PHP, MySQL et Apache qui fonctionne correctement.
Bien que certaines choses sont spécifique à Debian ou Ubuntu, ça ne devrai pas être trop compliqué de l'appliquer sur une autre distribution.
La toute première chose à faire est de créer le groupe "www". N'importe mis dans ce groupe pourra créer un nouveau site.
Ajoutez
vous dans le groupe "www" :
sudo gpasswd –a username www && newgrp www
Il faut maintenant être sur que le répertoire de stockage de tous les sites est accessible en lecture et écriture ainsi que propriétaire par "www".
sudo chown :www /var/www
sudo chmod g+ws /var/www
Le "s" du chmod permet de nous assuré que tous les répertoires créer dans /var/www appartiendrons bien au groupe "www".
Ensuite on doit s'assurer que "www" peux écrire dans le répertoire ou sont stockés les fichiers de configuration "vhost".
sudo chown :www /etc/apache2/sites-*
Maintenant on va créer un template de configuration "vhost".
Il sera utilisé pour générer la configuration de chacun de vos nouveaux sites.
<VirtualHost *:80>
ServerName {SITE}.local
DocumentRoot /var/www/sites/{SITE}.local/htdocs
DirectoryIndex index.php
<Directory />
Options FollowSymLinks
AllowOverride All
</Directory>
<Directory /var/www/sites/{SITE}.local/htdocs>
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/www/sites/{SITE}.local/logs/error.log
LogLevel warn
CustomLog /var/www/sites/{SITE}.local/logs/access.log combined
</VirtualHost>
Sauvegardez le fichier comme : /etc/apache2/sites-available/example.conf
On peux maintenant créer notre premier site de test :
mkdir -p /var/www/sites/foo.local/{htdocs,logs}
echo '<?php phpinfo(); ?>' > /var/www/sites/foo.local/htdocs/index.php
cd /etc/apache2/sites-available
sed -e 's/{SITE}/foo/g' example.conf > foo.conf
sudo a2ensite foo.conf
sudo /etc/init.d/apache2 restart
echo '127.0.0.1 foo.local' | sudo tee -a /etc/hosts
Quelques explications sur les commandes :
- La première ligne va créer la structure minimal pour un nouveau site internet.
- on ajoute un fichier index.php qui contiendra une simple appel à phpinfo();
- Ensuite on se déplace dans le répertoire de configuration des vhost
- On ajoute un nouveau fichier de configuration vhost nommé foo.conf qui est une copie de example.conf (vu auparavent). On utilise "sed" pour remplacer toutes les occurrences de '{SITE}' avec 'foo'.
- Ensuite on "rend le fichier de configuration vhost disponible". Ceci ajoute un lien symbolique dans /etc/apache2/sites-enabled
- On relance Apache
- Ajout foo.loal à notre fichier de hosts. Ceci permet d'accéder au site via http://foo.local.
C'est à peux prêt tout !
On peux continuer sur cette base assez longtemps.
Une chose à savoir :
Si vous avez besoin d'avoir des sous répertoires qui soit accessibles en écriture par Apache, il faudra que le propriétaire soit le groupe www-data et ce groupe aussi aussi besoin des droits en écriture.
Exemple :
mkdir -p /var/www/sites/foo.local/uploads
sudo chown :www-data /var/www/sites/foo.local/uploads
sudo chmod g+w /var/www/sites/foo.local/uploads
Ceci est une traduction d'un article en anglais écrit par Tony Quilkey sur le site PHP Freaks :
http://www.phpfreaks.com/tutorial/a-simple-debian-based-dev-environment
Commentaires
Aucun commentaire. Soyez le premier !