soucis d'installation sur Linux Ubuntu

Problèmes d'installation de Maarch LetterBox.

soucis d'installation sur Linux Ubuntu

Message par steph@ne » 24 Fév 2009, 10:52

bonjour,
après avoir passé une journée à chercher un peu partout dans les forums, j'ai tout supprimé pour refaire une installation propre (avec le patch sur le chrono) mais j'ai toujours un problème pour enregistrer un courrier.
j'obtiens sur un appel téléphonique le message suivant:

Warning: scandir(/home/ftp/maarch/1) [function.scandir]: failed to open dir: No such file or directory in /home/applisWeb/MaarchLetterBox-2.4/class_docserver.php on line 69

Warning: scandir() [function.scandir]: (errno 2): No such file or directory in /home/applisWeb/MaarchLetterBox-2.4/class_docserver.php on line 69

Warning: array_shift() [function.array-shift]: The argument should be an array in /home/applisWeb/MaarchLetterBox-2.4/class_docserver.php on line 72

Warning: array_shift() [function.array-shift]: The argument should be an array in /home/applisWeb/MaarchLetterBox-2.4/class_docserver.php on line 73

Warning: copy(/home/ftp/maarch/1/2.maarch) [function.copy]: failed to open stream: No such file or directory in /home/applisWeb/MaarchLetterBox-2.4/file_index.php on line 898

Warning: Cannot modify header information - headers already sent by (output started at /home/applisWeb/MaarchLetterBox-2.4/class_docserver.php:69) in /home/applisWeb/MaarchLetterBox-2.4/file_index.php on line 902


de même sur un bon de commande, j'ai le message suivant:

Warning: copy(/home/ftp/maarch//tmp_file_bblier.pdf) [function.copy]: failed to open stream: No such file or directory in /home/applisWeb/MaarchLetterBox-2.4/file_index.php on line 1330


Dans le premier cas, il se crée un fichier tmp.maarch mais pas de répertoire 1 ce qui explique le message d'erreur
Dans le 2e cas, le répertoire 1 se crée bien mais de fichier tmp_file_bblier.pdf d'où le message d'erreur.
Le fait que des répertoires se créent semble indiquer que tout est correct sur les droits ftp (que j'ai soigneusement vérifié)

Dernière précision: le poste client Ubuntu 8.10 et le poste serveur est en Ubuntu 8.04 LTS
merci de vos remarques
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31

Re: soucis d'installation sur Linux Ubuntu

Message par steph@ne » 24 Fév 2009, 14:39

je commence à tracer un peu pour voir ce qui se passe et d'entrée, je me pose des questions.
dans class_docserver.php, on regarde le nombre de fichiers dans le répertoire.
S'il n'y a pas de fichiers, on fait un cas particulier avec création du répertoire 1 et sinon, on crée un répertoire n+1
Dans mon cas, comme le 1er courrier entrant que je crée est un appel téléphonique qui va créer un fichier temporaire tmp.maarch, jamais je n'aurais aucun fichier dans le répertoire et donc jamais de répertoire 1 créé
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31

Re: soucis d'installation sur Linux Ubuntu

Message par steph@ne » 24 Fév 2009, 16:23

j'ai trouvé le moyen d'aller plus loin avant une nouvelle erreur.
Le upload du fichier se fait dans le répertoire en dur ftp (et pas dans ftphome) mais après on va le chercher dans ftphome donc introuvable.
pour contourner, j'ai du rajouter en ligne 1328:
$path_tmp = "ftp/tmp_file_".$_SESSION['user']['UserId'].'.'.$the_ext;
qui va chercher dans le répertoire ftp le fichier qui s'y trouve
bizarre que je sois le seul sur le problème sauf si tout le monde fixe le répertoire ftphome sur ce répertoire ftp !
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31

Re: soucis d'installation sur Linux Ubuntu

Message par steph@ne » 24 Fév 2009, 16:40

pour terminer l'exercice, on doit aussi modifier pour le calcul de la taille (filesize)
donc pour file_index.php

1328d1329
< $path_tmp = "ftp/tmp_file_".$_SESSION['user']['UserId'].'.'.$the_ext;
1390c1391
< $size = filesize('ftp/tmp_file_'.$_SESSION['user']['UserId'].'.'.$the_ext);
---
> $size = filesize($_SESSION['config']['ftphomedir'].'/tmp_file_'.$_SESSION['user']['UserId'].'.'.$the_ext);

ceci dit, tout bien réflechi, il semble que le répertoire ftp codé en dur soit du code bien moins souple que le le ftphome paramétrable. Est ce que l'esprit du code ne serait-il pas de faire un upload sur le répertoire ftphome plutôt que vers ftp/ ?
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31

Re: soucis d'installation sur Linux Ubuntu

Message par steph@ne » 25 Fév 2009, 16:06

même motif, même punition pour indexation_result.php
diff indexation_result.php*
1041d1040
< $path_tmp = "ftp/".$_SESSION['FILE']['Ftp_File'];
1102c1101
< $size = filesize('ftp/'.$_SESSION['FILE']['Ftp_File']);
---
> $size = filesize($_SESSION['config']['ftphomedir'].'/'.$_SESSION['FILE']['Ftp_File']);
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31

Re: soucis d'installation sur Linux Ubuntu

Message par steph@ne » 25 Fév 2009, 20:48

autre modification pour file_index.php
on remet la la génération du fichier temporaire dans le répertoire ftp/ car le mettre dans $ftphomedir perturbe le calcul du nombre de répertoires en incluant ce fichier tmp.maarch.
Avec cette modification, tout fonctionne parfaitement

diff file_index.php*
835c835
< //$path_tmp = $_SESSION['config']['ftphomedir'].'/tmp'.$res->VALUE.".maarch";
---
> $path_tmp = $_SESSION['config']['ftphomedir'].'/tmp'.$res->VALUE.".maarch";
840,841c840,841
< //$path_tmp = $_SESSION['config']['ftphomedir'].'\\tmp'.$res->VALUE.".maarch";
< $path_tmp = 'ftp\\tmp'.$res->VALUE.".maarch";
---
> $path_tmp = $_SESSION['config']['ftphomedir'].'\\tmp'.$res->VALUE.".maarch";
> //$path_tmp = 'ftp\\tmp'.$res->VALUE.".maarch";
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31

Re: soucis d'installation sur Linux Ubuntu

Message par steph@ne » 06 Mars 2009, 10:14

dernière (?) modification pour le fichier file_index.php
erreur pour enregistrer une pièce jointe en émission de courrier. Toujours ce problème de répertoire temporaire (ftphome ou bien ftp/ ) résolu par

Code : Tout sélectionner
1813c1813
<                if (!copy($_SESSION['config']['ftphomedir'].$tmp_slh_system223.'tmp_file_'.$_SESSION['user']['UserId'].'.'.$the_ext, $destination_rept.$file_destination_name.".".$the_ext))
---
>                if (!copy("ftp/tmp_file_".$_SESSION['user']['UserId'].'.'.$the_ext, $destination_rept.$file_destination_name.".".$the_ext))
steph@ne
 
Message(s) : 215
Inscription : 24 Fév 2009, 10:31


Retour vers Installation

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit et 1 invité