Aller au contenu

Usbstation 2 : Installer Serveur Web Apache + Php


Invité sank64

Messages recommandés

Invité sank64

PREREQUIS:

Modele: Usbstation 2 - DSM 3.2 + Ipkg sur clef (cf. http://syno.haeflinger.com/index.php/USBStation2) avec le package nano (ipkg install nano)

Difficulte: 2/5

Temps : 15 min

INTRO:

Bonjour à tous, je viens enfin d'arriver à mettre un serveur web sur l'usbstation 2 et je vous fait partager ca, vu qu il y a vraiment peu de documentation specifique a l usbstation sur ce sujet.

Ce tuto ne s'adresse pas aux experts en informatique mais plutot, a ceux qui comme moi, debutent et apprennent l'informatique sur le tas. Ceux qui ont d'autres modeles que l'usbstation ne sont pas non plus concernes car ils disposent de la dsm 4, et de toutes ces options avancees qui manquent vraiment à l usbstation... enfin, jusqu'a ce que l'ipkg arrive...

C'est pourquoi je tiens a remercier Itolosa pour mettre a jour le firmware, PatrickH pour son coup de pouce, et les gars de la NSLU2-Linux qui compilent tous les paquets.

COMPRENDRE LA MANIPULATION:

Le serveur de l'usbstation utilise déjà deux serveurs apache, un qui gere les taches d administration du serveur et l'autre pour les fonctions des utilisateurs. Ils se trouvent respectivement /usr/syno/etc/rc.d/S97apache-sys.sh et /usr/syno/etc/rc.d/S97apache-user.sh. L'objectif de ce tuto, c'est de rendre disponible un dossier de votre disque dur depuis internet et ce independament de l'environement du DSM. C'est le role du serveur apache, le 3eme, que l'on va installer grace au systeme ipkg dans un volume libre, et completement modifiable. Par defaut ce volume s appelle /volume1/, si vous l avez installe sur une clef usb, il s'appelle probablement /volumeUSB1/, pour ma part j ai formate ce volume en plusieurs parties, le /volumeUSB1/usbshare1-5/ contient les programmes de l'ipkg (@optware) et le volume /volumeUSB1/usbshare1-9/ est le dossier que je souhaite rendre disponible depuis le web. Dans les instructions a suivre, a vous de modifier les chemins de fichier en fonction de votre propre architecture.

Une fois le serveur apache installe, vous aurez acces a votre dossier depuis le navigateur web. Seulement, si vous voulez executer des scripts, pour faire fonctionner un programme, ou un site web, il vous faudra installer des modules et renseigner correctement la configuration du serveur apache pour qu'il puisse executer ces scripts, lorsqu ils sont disponibles dans votre dossier web. Ce tuto montre comment implementer le module php. Une fois complete, il sera facile pour vous, d implementer de maniere analogue, mysql , python, etc.

LES ETAPES:

1. INSTALLER APACHE

Se connecter en console sur le serveur.

ipkg install apache --verbose

On vous renvoie un message d'erreur a propos d'un module qui ne fonctionne pas, a la ligne 74 je crois. Editez le fichier de configuration d'apache pour mettre une diese devant la ligne de code apropriee. Pour editer apache faites:

nano /volumeUSB1/usbshare1-5/@optware/etc/apache2/httpd.conf

Si vous lisez le fichier de configuration on vous dit que le dossier web sera /opt/var/www

Quittez l edition du httpd.conf et allez dans ce dossier afin de creer un lien symbolique vers le dossier de votre choix, qui hebergera tout votre site web:

cd /opt/var
ls
rm -R www
ln -s /volumeUSB1/usbshare1-9/www
ls

La derniere commande sert a verifier que vous avez bien remplace le dossier www par le raccourci de votre choix. Maintenant redemarrez le serveur apache en faisant:

/opt/etc/init.d/S80apache restart

Vous devriez avoir acces a votre serveur! Allez sur http://localhost:8000

Pour lire un fichier, placez un fichier texte par exemple dans votre dossier web

Si vous avez un message d erreur vous disant que vous n avez pas les droits d acces, allez a la racine de votre dossier web, pour moi c est /volumeUSB1/usbshare1-9/ et faites un

chmod 777 -R www (allez lire https://fr.wikipedia.org/wiki/Permissions_Unix pour bien comprendre la securite que vous mettez en place)

Si vous accedez correctement votre dossier web, vous pouvez tester l acces depuis internet, en ouvrant le port 8000 de votre routeur. http://votreadresseweb.fr:8000

Si vous n arrivez pas a faire fonctionner votre serveur, ne poursuivez pas plus loin la manip, laissez un commentaire pour demander de l aide.

2. INSTALLER PHP:

ipkg install php php-apache

3. CONFIGURER APACHE

On va configurer le serveur apache pour qu il reconnaisse et execute les scripts .php

nano /volumeUSB1/usbshare1-5/@optware/etc/apache2/httpd.conf

Ajoutez a la liste des modules celui-ci

LoadModule php5_module libexec/libphp5.so

Et ajoutez la reconnaissances des fichiers qui ont pour extension .php

AddType text/html .php
AddType application/x-httpd-php .php .phtml .php3
AddType application/x-httpd-php-source .phps
AddHandler php5-script  .php

<FilesMatch ".ph(p3?|tml)$">
SetHandler application/x-httpd-php
</FilesMatch>
<FilesMatch ".phps$">
SetHandler application/x-httpd-php-source
</FilesMatch>

4 remarques:

  1. On peut mettre cette configuration dans un fichier a part comme indique dans d autres tuto du web. Le fichier a creer c est /volumeUSB1/usbshare1-5/@optware/etc/apache2/conf.d/php.conf et la seule commande alors a mettre dans httpd.conf c est Inclure /etc/apache2/conf.d/php.conf
  2. le module php se trouve dans /volumeUSB1/usbshare1-5/@optware/libexec/libphp5.so
  3. la derniere partie de code plus haut peut se mettre entre balises conditionnelles <IfModule mod_php5> et </IfModule>
  4. Le serveur apache ne se lance pas encore a chaque redemarrage du nas, donc en attente de faire un cron, il faut manuellement relancer le serveur apache:
/opt/etc/init.d/S80apache restart

C est tout. Si vous voulez tester que php fonctionne, creez un fichier test.php avec un editeur de texte et ecrivez le code

<?php phpinfo(); ?>

Copiez le dans votre dossier web, et acceder a ce document depuis un navigateur internet. Apres quelques secondes vous devriez avoir une page qui liste la configuration de php. (pour un aperçu, faites une recherche d image google "php phpinfo")

C est fini. Faites moi part de vos remarques, et vos decouvertes !

Modifié par sank64
Lien vers le commentaire
Partager sur d’autres sites

  • 1 mois après...

j'ai tenté l'installation de ipkg après maj du firmware avec la version itolosa, mais le contenu de "volume1" ne correspond pas à l'exemple:

USBStation2> cd /volume1
USBStation2> ls -l
lrwxrwxrwx 1 root root 23 Jan 1 2000 13031600000001720|1 -> /volumeUSB2/usbshare2-1
dr-xr-xr-x 3 root root 71 Dec 4 2012 @misc
drwxr-xr-x 4 root root 40 Nov 20 2012 @resources
-r-xr-xr-x 1 root root 78 Dec 4 2012 install-ipkg
lrwxrwxrwx 1 root root 13 Dec 4 2012 readme.txt -> ../readme.txt
lrwxrwxrwx 1 root root 23 Aug 27 20:35 †††††††䍎㜷㘲0|1 -> /volumeUSB1/usbshare1-1
lrwxrwxrwx 1 root root 23 Aug 27 20:35 †††††††䍎㜷㘲0|2 -> /volumeUSB1/usbshare1-2
USBStation2>
j'ai les volumeUSB 1 et 2 en plus....(a priori c'est des liens d'après mes maigres connaissances)
et lors de l'installation j'ai un refus car je n'ai pas les droits:
USBStation2> ./install-ipkg
Optware Bootstrap for syno-mvkw.
Extracting archive... please wait
bootstrap/
tar: can't make dir bootstrap: Permission denied
bootstrap/bootstrap.sh
tar: can't create directory 'bootstrap': Permission denied
tar: can't open 'bootstrap/bootstrap.sh': No such file or directory
/volume1/@misc/syno-mvkw-bootstrap_1.2-7_arm.xsh: cd: line 5: can't cd to bootstrap
j'ai tenté de modifié les droits mais:
USBStation2> chmod u+rwx,g+rwx,o+rwx,a+rwx /.
chmod: /.: Read-only file system
et là je suis coincé.
Lien vers le commentaire
Partager sur d’autres sites

Rejoindre la conversation

Vous pouvez publier maintenant et vous inscrire plus tard. Si vous avez un compte, connectez-vous maintenant pour publier avec votre compte.

Invité
Répondre à ce sujet…

×   Collé en tant que texte enrichi.   Coller en tant que texte brut à la place

  Seulement 75 émoticônes maximum sont autorisées.

×   Votre lien a été automatiquement intégré.   Afficher plutôt comme un lien

×   Votre contenu précédent a été rétabli.   Vider l’éditeur

×   Vous ne pouvez pas directement coller des images. Envoyez-les depuis votre ordinateur ou insérez-les depuis une URL.

×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.