open_basedir sur une vhost

Bonjour,
Je tente par ici
j'ai une installation isconfig 3.1.12
Je travail avec le framework Laravel pour évité de donner un accès depuis le web aux fichiers uploadés, je les stock dans un répertoire en dehors du public
Sur mon serveur local et dev tout fonctionne bien
Sur le serveur de prod qui lui fonctionne avec ispconfig j'ai ce message d'erreur
fopen(): open_basedir restriction in effect. File(/dev/null) is not within the allowed path(s)

Au niveau du vhost j'ai quelques modifications, toutes ne correspondent pas a mon problème :
DocumentRoot "/var/www/clients/client12/web19/web/public"
Header always set Strict-Transport-Security "max-age=31536000; includeSubDomains"
Header always append X-Frame-Options SAMEORIGIN
Header edit Set-Cookie ^(.*)$ $1;HttpOnly;Secure
Header set X-XSS-Protection "1; mode=block"
Header set X-Content-Type-Options nosniff

vous pouvez voir que je fais pointer le répertoire web sur public
mon arborescence
web/
les répertoires du framework
public/ (le repertoire www)
ged/ (le repertoire de stockage de fichier)
tmp/ (un repertoire temporaire qui me sert a créer des pdf de grande taille)

pour la partie stockage aucun problème je peux depuis un formulaire uploader des pdf, word, Excel... et je peux aussi les appeler et les afficher/télécharger.

Mon problème est au niveau de la génération de pdf j'ai besoin de générer des pdf de grandes taille (700 à 800 pages) pour ça j'ai choisi une approche de multi process. je créer plusieurs process php qui vont chacun me généré une partie du pdf final chaque pdf est stocké dans le repertoire tmp/{user_id}/{demande_id}
une fois que tous les chapitres sont créer je les merges en un seul fichier qui lui est stocké directement dans ged les répertoires et fichier dans tmp sont alors supprimé.

j'ai modifié open_basedir PHP : /var/www/clients/client12/web19/web:/var/www/clients/client12/web19/web/ged:/var/www/clients/client12/web19/web/ged/tmp:/var/www/clients/client12/web19/private:/var/www/clients/client12/web19/tmp:/var/www/c12.app7.nc/web:/var/www/c12.app7.nc/web/ged:/var/www/c12.app7.nc/web/ged/temp:/srv/www/c12.app7.nc/web:/usr/share/php5:/usr/share/php:/tmp:/usr/share/phpmyadmin:/etc/phpmyadmin:/var/lib/phpmyadmin:/dev/random:/dev/urandom
mais rien a faire ça ne veut pas me donner accès a ce fichu répertoire les droits sur le répertoire on été vérifié et aillant tout tenté j'ai même redémarrer le serveur au complet (sans grande conviction...)

Merci pour votre aide

Réponses

  • Je repasse par ici, j'espère que ça aidera quelqu'un d'autre
    J'ai mal interprété les logs la réponse était dedans comme toujours ;)
    fopen(): open_basedir restriction in effect. File(/dev/null) is not within the allowed path(s) étant dans une suite de message je pensais que l'information /dev/null était générique.
    Ne faite pas la même erreur ajouté /dev/null à open_basedir de votre vhost si votre problème est similaire il sera résolu.
    Solution apporté par till sur Howtoforge
Connectez-vous ou Inscrivez-vous pour répondre.