Espace membres

Bonjour Anonyme

Inscription

Email :
Mot de passe :

Mot de passe oublié ?

Nos scripts

MySpeach

MySpeach est un chat php sans base de donnée, rapide, léger et facile à prendre en main. DEMO

MyPHPUpload

MyPHPUpload est un script d'upload sécurisé écrit en PHP. DEMO

GrapAgenda

Agenda PHP et MySQL avec comptes utilisateurs et administration. DEMO

Livre PHP

création de site

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.
sudo groupadd www


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 !

Pseudo
Email
Commentaire

Merci d'écrire le code ici :