Tuto : héberger les scripts PHP sur son Raspberry
Salut à tous !
Aujourd’hui je vous propose un nouveau guide, qui vous permettra de pouvoir auto héberger vos scripts sur le Raspberry. En effet, comme nous avons pu le voir précédemment, (et comme nous aurons à le voir bientôt!!) nous avons parfois l’utilité d’avoir à héberger des scripts PHP, comme par exemple, avec cette soluce : « Éteindre ou allumer ses PC depuis la zipa » ou encore « Déclenchement de règle depuis le calendrier Google » .
Le problème est que pour héberger des scripts PHP, il vous faut soit un NAS, soit un serveur Web, il en existe des gratuits (comme alwaysdata.com), mais puisque nous avons un Raspberry sous la main, autant nous en servir !
Bon je ne reprendrais pas l’installation de l’OS, car je vous ai précédemment filé une liste de site, ou tout ceci est très bien détaillé.
Pour info, je tourne avec l’OS Moebius, qui est une version ultra light de raspbian. L’avantage de Moebius, est que celui ci ne possède pas d’interface graphique, et qu’il consomme donc très peu de ressources sur le Raspberry (idéal en utilisation NAS)
1/ Installation d’un serveur Web
Vous trouverez sur le net tout un tas de comparatif d’applications serveur pour le Raspberry. Pour ma part, j’en ai conclu que le moins lourd, en terme de ressource, était NGINX, j’ai donc installé celui ci! (bien entendu, Nginx, pourra vous servir pour d’autres applications bien plus pointues, ce n’est pas ce qu’il manque !)
Commençons, connectez vous à votre raspberry en SSH.
puis faite une petite mise à jour des paquets (ça ne fais jamais de mal )
sudo apt-get update
Puis ajoutez les paquets suivants :
sudo apt-get install php5-fpm libgd2-xpm libpcrecpp0 libxpm4
Installez Nginx :
sudo apt-get install nginx
Création du répertoire www :
sudo mkdir /var/www
Puis changez le propriétaire du fichier
sudo chown www-data:www-data /var/www
Nous allons maintenants ajouter quelques configuration supplémentaires, faites ensuite une commande :
sudo nano /etc/nginx/sites-available/default
et éditez le tel quel :
Quittez en avec un CTRL + O pour enregistrer, puis un CTRL + X pour quitter.
Ensuite nous allons optimiser le fonctionnement de notre serveur :
sudo nano /etc/php5/fpm/php-fpm.conf
Puis éditez la ligne (astuce : faite un CTRL + W pour rechercher, ça va nettement plus vite!) :
« process.max 2 »
« worker_processes 1 »
ensuite, relancer Nginx :
service nginx restart service php5-fpm restart
Et voilà, notre serveur est prêt !!!!
2/ Hébergement des scripts php
Tout à l’heure nous avons créé un dossier : » var/www « , et bien désormais, lorsque vous essaierez d’accéder à votre raspberry depuis internet, ou votre réseau local avec le port 80, et bien c’est ce dossier vers lequel votre navigateur pointera.
Pour créer le script faites donc :
sudo nano /var/www/<span style="color: #ff0000;">nom-du-script</span>.php
Éditez votre script (vous pouvez repartir des 2 exemples que je vous ai cité en intro.)
Puis faite un CTRL + O pour enregistrer, puis un CTRL + X pour quitter.
Vous connaissez l’adresse IP de votre raspberry, puisque vous vous y connectez en SSH.
Maintenant si vous souhaitez exécuter le script, ou si vous souhaitez que votre Zipa exécute un script, il vous suffira juste de taper :
192.168.1.21:80/nom-du-script.php
(cas du réseau local)
C’est aussi simple que ça !! bien sur ça marche aussi depuis internet, mais dans notre cas, nous l’utilisons, ou l’utiliserons depuis notre réseau local.
Depuis internet, assurez vous que votre raspberry ai une IP fixe, et n’oubliez pas de faire les redirection nécessaire depuis votre box !
Bon ce tuto s’adresse aux débutants, j’en suis conscient! Mais il est essentiel aux possesseurs de raspberry de savoir faire cette manip pour la suite des évènements !
Bonne journée à tous !!!
Salut Vincent,
J’ai un petit souci quand je redémarre le service php5-fpm quand je lance la commande sa me met permission non accordée failed!
Es que c’est normal?
essai un « sudo service php5-fpm restart »
Je testerai à mon retour et je te tiens au courant. Merci encore!!!!
Je reviens vers toi pour te dire que sa fonctionne nickel merci encore!!!!
salut vincent
j’ai un petit probleme de dépot je crois
voila se que j ai quand je lance la commande : apt-get install php5-fpm
Reading package lists… Done
Building dependency tree
Reading state information… Done
The following extra packages will be installed:
libonig2 libqdbm14 php5-common
Suggested packages:
php-pear
The following NEW packages will be installed:
libonig2 libqdbm14 php5-common php5-fpm
0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded.
Need to get 3,045 kB/3,294 kB of archives.
After this operation, 8,820 kB of additional disk space will be used.
Do you want to continue [Y/n]? y
Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main php5-common armhf 5.4.4-14+deb7u3
404 Not Found
Err http://mirrordirector.raspbian.org/raspbian/ wheezy/main php5-fpm armhf 5.4.4-14+deb7u3
404 Not Found
Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/p/php5/php5-common_5.4.4-14+deb7u3_armhf.deb 404 Not Found
Failed to fetch http://mirrordirector.raspbian.org/raspbian/pool/main/p/php5/php5-fpm_5.4.4-14+deb7u3_armhf.deb 404 Not Found
E: Unable to fetch some archives, maybe run apt-get update or try with –fix-missing?
Salut,
Mince, on dirait qu’ils ont changés les sources de place.. Je t’avoue que je ne pourrais pas t’aider plus, car mes compétences en linux sont ultra limitées.
Je te conseille de demander à Chris de PihomeServer, qui lui connait parfaitement le Rpi. reposte ton com par ici
http://www.pihomeserver.fr/2012/12/10/raspberry-pi-home-server-etape-11-installer-nginx-avec-support-php-cgi-et-scgi/
désolé
merci quand meme
je vais lui demander