Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 02/04/2014, à 22:35

Bob dit l'Âne

Accès à mon répertoire de travail dans Lamp

J'ai installé un serveur Lamp il y a quelques temps déjà et je ne me souviens plus comment ni où.
A première vue, il est correctement installé puisque lorsque j'ouvre l'un de ces 2 liens ( http://127.0.0.1/ ou http://localhost ) dans mon navigateur, le message suivant s'affiche bien :
« It works! etc ...... »

J'ai créé mon répertoire de travail testphp dans le dossier /var/www et j'y ai copié mes fichiers.php :
sudo cp essaiphp.php /var/www/testphp/
Il faut double cliquer sur le fichier.php pour l'éditer et le modifier dans mon éditeur Geany, mais je ne peux pas enregistrer les changements directement dans le dossier.

Je voudrais créer un répertoire de travail à un autre endroit.
Merci d'avance pour l'aide !

Dernière modification par Bob dit l'Âne (Le 02/01/2016, à 00:12)


DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS

Hors ligne

#2 Le 02/04/2014, à 23:11

nicolas06600

Re : Accès à mon répertoire de travail dans Lamp

Salut,

Tu as plusieurs manières de faire ça. La première est de créer un répertoire dans ton home et de lancer la commande:

$ sudo ln -s /CHEMIN//VERS/TON/REPERTOIRE/ /var/www/NOM_DU_REPERTOIRE

Ensuite, lorsque tu ajouteras des fichiers dans ton répertoire, ils apparaîtront dans http://127.0.0.1/NOM_DU_REPERTOIRE si tu n'as pas trop touché la config apache.

Sinon, tu peux activer les répertoires utilisateurs. Pour ce faire, utilise ces commandes:

$ sudo a2enmod userdir
$ sudo service apache2 restart
$ mkdir ~/public_html

Ensuite, tout ce que tu mettras dans public_html apparaîtra dans http://127.0.0.1/~USER/, avec USER ton nom d'utilisateur. Par exemple, si tu t'appelles Pierre et que tu crées un fichier test.php dans /home/pierre/public_html/test.php, tu pourras y accéder à l'adresse http://127.0.0.1/~pierre/test.php. N'oublie pas le tilde "~".
Attention pour cette deuxième méthode, il te faut lire cette section de la doc (à partir du panneau attention) si tu veux faire du php, car ce dernier est désactiver dans le répertoire public_html par sécurité: http://doc.ubuntu-fr.org/lamp#alternati … ecommandee

Si tu as d'autres questions n'hésite pas à demander.

Bon courage !

Hors ligne

#3 Le 04/04/2014, à 10:46

Bob dit l'Âne

Re : Accès à mon répertoire de travail dans Lamp

Bonjour nicolas06600
et merci pour ta réponse.

J'ai testé la première méthode.
J'ai donc créé dans mon home un répertoire appelé Testserveur dans lequel j'ai placé mes "fichier.php".

jeanyves@jeanyves-P7612:~$ cd Testserveur
jeanyves@jeanyves-P7612:~/Testserveur$ ls
age.php     en_tete.php   index.php  page1.php  page3.php
calcul.php  essaiphp.php  menu.php   page2.php  pied_page.php

Je peux travailler sur ces fichiers dans un éditeur (en l'occurence Geany) et les enregistrer ou enregistrer les modifications sans problème
Comme indiqué, j'ai fait ensuite :

jeanyves@jeanyves-P7612:~$ sudo ln -s /Testserveur/ /var/www/testphp

mais, les fichiers qui se trouvent dans Testserveur n'apparaissent toujours pas à l'adresse http://127.0.0.1/testphp ou à l'adresse http://localhost/testphp
J'ai vérifié: le répertoire /var/www/testphp/ ne contient que :

jeanyves@jeanyves-P7612:~$ cd /var/www/testphp/ 
jeanyves@jeanyves-P7612:/var/www/testphp$ ls
Testserveur

un fichier du type lien qui apparaît en caractères rouges dans mon terminal.

sad


DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS

Hors ligne

#4 Le 04/04/2014, à 11:12

nicolas06600

Re : Accès à mon répertoire de travail dans Lamp

Oui, c'est parce que le dossier testphp existe déjà, et donc il a créé le lien dans le dossier testphp. Pour y accéder, il faut aller à l'address http://localhost/testphp/Testserveur.

Si tu veux accéder directement à ton site depuis http://localhost/testphp, tu peux entrer les commandes suivants:

$ sudo rm /var/www/testphp/Testserveur
$ sudo rmdir /var/www/testphp
$ sudo ln -s $HOME/Testserveur /var/www/testphp

L'explication:
La commande ln -s SOURCE DESTINATION crée un lien symbolique (-s) de SOURCE vers DESTINATION. Si la destination n'existe pas, elle est créée et ça sera le nom de ton lien. Si elle existe et que c'est un fichier, tu auras une erreur. Enfin, si c'est un dossier, un fichier portant le même nom que la source est créé dans ce dossier et ça sera ton lien (c'était ton cas).

Enfin, tu peux créer des liens symboliques vers n'importe des fichiers et des dossiers. La différence avec les liens normaux, c'est que c'est gérer directement sur le disque (avec un fichier de type lien), alors que les liens sous windows sont de simples fichiers texte avec la cible écrite dedans. Du coup tu peux dire à ton serveur apache ou ftp de les suivre (Options Indexes FollowSymLinks pour apache).

Regarde:

$ man ln

pour plus d'informations.

Hors ligne

#5 Le 05/04/2014, à 17:53

Bob dit l'Âne

Re : Accès à mon répertoire de travail dans Lamp

Merci nicolas06600
smile
J'ai suivi tes instructions et ça fonctionne maintenant.
Je suis en situation d'apprentissage, donc merci de me dire si c'est bien ça

Si je comprends bien, sur tes indications :
J'ai supprimé le mauvais lien Testserveur que j'avais créé dans le dossier /var/www/testphp
J'ai supprimé le dossier testphp lui-même
J'ai recréé le lien symbolique qui me permet d'atteindre mes fichier.php à cette adresse :  http://127.0.0.1/testphp

Dans mon éditeur Geany, je travaille avec les fichier.php qui se trouvent dans le répertoire Testserveur que j'ai créé dans mon home.

Donc, puisque ça marche comme ça, je vais attendre un peu pour tester ta 2 ème méthode ( activation des répertoires utilisateurs )

Bonne soirée et à plus.


DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS

Hors ligne

#6 Le 05/04/2014, à 18:04

nicolas06600

Re : Accès à mon répertoire de travail dans Lamp

Salut,

Oui c'est bien ça. Maintenant le dossier testphp pointe vers Testserveur, et pour apache c'est comme si les fichiers étaient directement dans Testserveur. D'ailleurs, si tu ouvres les fichiers qui sont dans /var/www/testphp avec ton éditeur ça devrait marcher et les fichiers devraient être identique.

Pour la deuxième méthode, ne t'embête pas avec ça. Les liens symboliques c'est beaucoup plus pratique (surtout si tu as compris comment ça marche). Le seul intérêt des répertoires utilisateurs est si tu as un serveur avec un large nombre d'utilisateur, chacun a un dossier ou il peut partager des fichiers qui seront publiquement accessible (via http://www.adresse_serveur.com/~utilisateur1/monfichier). Mais pour ton cas, comme le php est désactivé dans les dossiers utilisateurs sous ubuntu, il va falloir faire des manips dans la conf apache, donc il faut mieux garder la config actuelle...

Bonne soirée !

Hors ligne

#7 Le 06/04/2014, à 10:14

Bob dit l'Âne

Re : Accès à mon répertoire de travail dans Lamp

OK, et merci encore.
Le problème est donc résolu.


DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS

Hors ligne

#8 Le 01/01/2016, à 22:09

Bob dit l'Âne

Re : Accès à mon répertoire de travail dans Lamp

Suite à quelques mésaventures, j'ai été contraint de réinstaller mon serveur LAMP.

Ca s'est gâté au moment de la liaison entre mon répertoire de travail  $HOME/Testserveur et le répertoire /var/www/html/testphp que j'ai bien créé comme indiqué ci-dessus, à savoir
sudo ln -s $HOME/Testserveur /var/www/html/testphp

L'adresse http://127.0.0.1/testphp (http://localhost/testphp) ou /var/www/html/testphp fonctionne correctement, mais

absolument impossible d'atteindre et donc d'afficher les fichiers php qui se trouvent dans testphp, par exemple
l'adresse  http://localhost/testphp/lemien/tour.php ou l'adresse http://localhost/testphp/carnet/index.html me répond : Vous n'êtes pas autorisé à accéder à / testphp / lemien /
J'ai essayé plusieurs fois et j'avoue être surpris car au #5 ça marchait correctement.
Il y a certainement quelque chose qui m'échappe mais quoi ?


DELL G3 17 3779 - 17,3" FHD IPS - Core i5 8300H - RAM 8Go - 1To DD +128Go SSD - NVIDIA GTX 1050 Ti 4 Go
Ubuntu 22.04.3 LTS Home séparé et partition données
Akoya MD 97860 P7612 Core 2 Duo T6500 NVIDIA Realtek RTL8191SE Wireless LAN GeForce G210M
Ubuntu 16.04 LTS (« Xenial Xerus ») + NFS

Hors ligne

#9 Le 03/01/2016, à 22:45

J5012

Re : Accès à mon répertoire de travail dans Lamp

il est recommandé de ne pas utiliser /var/www avec apache2 , et d'utiliser le mecanisme des vhosts (virtualhosts : rend facile l'usage de dossiers de travail dans le /home/user)

→ /etc/hosts pour la correspondance nom / ip : evite l'install d'un serveur dns, permet la separation des applications, avoir des liens http://nom-application au lieu de http://localhost/nom-application
→ /etc/apache2/sites-available pour la config de l'application, prendre exemple sur le fichier preinstallé /etc/apache2/sites-available/default : remplacer les occurrences /var/www par l'emplacement de l'application, comme /home/user/dossier-application

plus d'infos :
https://doc.ubuntu-fr.org/apache2#sites-available
https://doc.ubuntu-fr.org/tutoriel/virt … ec_apache2
https://doc.ubuntu-fr.org/utilisateurs/ … s_anywhere

Dernière modification par J5012 (Le 03/01/2016, à 22:50)

Hors ligne