Accès aux répertoire configuration VHOST

Résolu/Fermé
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 - 21 juil. 2020 à 08:19
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 - 27 juil. 2020 à 15:01
Bonjour à toute et a tous,
je me permet de venir demander votre aide aujourd'hui car j'ai un soucis que je n'arrive pas à résoudre depuis quelque temps. . .

Le but final est d’autoriser l'accès à un répertoire ayant pour contenue des fichiers pdf.

Je m'explique.
J'ai mon site qui se trouve dans cette arborescence "/var/www/html/index.php" et je voudrais mettre le stockage de mes pdf ici par exemple "/stockage/pdf"/ sauf que je ne sais pas du tout comment faire car quand je met le lien dans la balise html (embed), j'utilise un chemin avec un truc du genre "/public/pdf/monpdf".
Sachant que le chemin absolut (coté debian) est "/var/www/html/public/pdf".


Du coup je vous avoue que je suis un peu perdu et que je ne sait pas vraiment comment faire..

Si vous pouvais me guider ce serais super !
Merci d'avance :D
A voir également:

5 réponses

Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
21 juil. 2020 à 09:02
Hello Hello,

Il pourrait étre interressant de nous dire quel type de serveur tu utilises.
Nginx ? Apache ?

A plus
1
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 6
21 juil. 2020 à 09:06
oups, j'avais oublié..

J'utilise apache avec la version 2019-10-15T19:53:42
0
Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
Modifié le 21 juil. 2020 à 11:32
Bien reçu.

Il faut savoir que apache tourne avec un utilisateur spécific : généralement *www-data*.
Tu peux rapidement vérifier l'utilisateur qui est utilisé avec un :
ps aux |grep "apache"


Il faut ensuite que le propriétaire de ton répértoire soit l'utilisateur en question :
chown -R www-data:www-data /stockage/pdf


Tu peux ensuite configurer l'accés à ton répertoire dans ton vhost avec un codeblock :
  <Directory "/stockage/">
DirectoryIndex index.html index.htm index.php index.php4 index.php5
Options -Indexes +IncludesNOEXEC +FollowSymLinks
allow from all
</Directory>


Je te laisserai configurer les Options qui vont bien dans le block, ça n'est qu'un exemple.

A plus

1
Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
21 juil. 2020 à 11:34
Selon le besoin tu peux limiter le allow from à 127.0.0.1 si tu veux que seulement ton serveur PHP ou apache accéde au données ( dans le cas ou c'est générer par une page de code )
0
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 6
24 juil. 2020 à 14:13
merci pour votre réponse !
j'ai bien fais ce que vous avais mis au dessus.

Serais t'il possible de me mettre exemple sur ce que je doit mettre sur la balise embed ?

J'ai tenté :
<embed src=/mon.pdf width=800 height=500 type='application/pdf'/>

<embed src=/stockage/mon.pdf width=800 height=500 type='application/pdf'/>

mais cela ne semble pas fonctionner
0
Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
24 juil. 2020 à 16:48
Bon, j'ai un ptit bug et j'arrive pas a répondre en message ( j'ai posté dans bug -> https://forums.commentcamarche.net/forum/affich-36772210-access-denied )

Je te le met en image en espérant que ça te permette plus ou moins d'avancer !

0
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 6
27 juil. 2020 à 08:04
merci beaucoup !

C'est fonctionnel à présent :D


Bonne journée à toi :D
0
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 6
27 juil. 2020 à 11:20
Je reviens vers toi Exileur car j'ai un soucis..
En gros je peux afficher le pdf via php maintenant via les lignes suivantes :
  $url = url();


  // Le chemin du fichier (path) 
  $file = "/pdf/".$url[4]; 
  
  // Type de contenu d'en-tête
  header("Content-type: application/pdf"); 
  
  header("Content-Length: " . filesize($file));
  
  // Envoyez le fichier au navigateur.
  readfile($file); 

cela fonctionne !

Sauf que si je fais ma balise embed les nouveaux liens de fonctionnes pas..
Je m'explique :
quand je fait l'ancien lien (/public/pdf/mon.pdf) qui se trouve ici au niveau de debian (var/www/html/)
cela fonctionne mais quand je fais ma balise avec le lien (/stockage/pdf/) qui se trouve au niveau de debian à la racine cela ne fonctionne pas..

Si tu pouvais me guider..

Merci encore
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 6
Modifié le 27 juil. 2020 à 12:45
J'ai trouvé.
Il suffit de retourné dans le vhost et j'ai ajouté la ligne suivante :
Alias "/pdf" "/stockage/pdf"
et maintenant cela fonctionne avec la ligne
<embed src=/pdf/mon.pdf width=800 height=500 type='application/pdf'/>
0
Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022 150
27 juil. 2020 à 14:56
Oui, c'était dans l'exemple que je t'ai donné plus haut :P

ps : perso, pour la génération de lien, je suis plutot de ce genre ->
echo "<embed src=" . $_SERVER['REQUEST_SCHEME'] . '://' . $_SERVER['HTTP_HOST'] . "/pdf/mon.pdf width=800 height=500 type='application/pdf'/>";
0
juliendu51100 Messages postés 442 Date d'inscription samedi 14 mars 2015 Statut Membre Dernière intervention 22 juin 2021 6 > Exileur Messages postés 1475 Date d'inscription mercredi 31 août 2011 Statut Membre Dernière intervention 16 décembre 2022
27 juil. 2020 à 15:01
Ah oui..

Merci pour l'info, j'en prend note :D
0