Server FTP en PHP

Le
Etienne SOBOLE
salut.

j'aimerai réaliser un serveur FTP en PHP.
y a t-il quelqu'un qui a deja vu des sources sur ce sujet?

merci
Etienne
Vos réponses Page 1 / 2
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
BZP
Le #813544
C'est assez bien documenté sur :
http://fr.php.net/manual/en/ref.ftp.php .

Exemple de code tiré de la page :
<?php
// set up basic connection
$conn_id = ftp_connect($ftp_server);

// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass);

// check connection
if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user
$ftp_user_name";
exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user_name";
}

// upload the file
$upload = ftp_put($conn_id, $destination_file, $source_file,
FTP_BINARY);

// check upload status
if (!$upload) {
echo "FTP upload has failed!";
} else {
echo "Uploaded $source_file to $ftp_server as
$destination_file";
}

// close the FTP stream
ftp_close($conn_id);
?>
Marc
Le #813363
C'est assez bien documenté sur :
http://fr.php.net/manual/en/ref.ftp.php .


...

// close the FTP stream
ftp_close($conn_id);
?>


ici c'est le client, pas le serveur ;-)

bruno modulix
Le #813168
Etienne SOBOLE wrote:
j'aimerai réaliser un serveur FTP en PHP.


Question con: pourquoi faire ?

--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in ''.split('@')])"

Marc
Le #813167

j'aimerai réaliser un serveur FTP en PHP.
y a t-il quelqu'un qui a deja vu des sources sur ce sujet?


sur Pear, j'ai vu un serveur Webdav et un serveur Web, pas de serveur
ftp.

http://pear.php.net/search.php?q=server&in=packages&x=0&y=0

en espérant que ca aide ;-)

Etienne SOBOLE
Le #816381
Question con: pourquoi faire ?


c'etait sur que quelqu'un allait me poser la question.
et bien voila:

j'ai un extranet qui géré une GED.
les fichiers posés respectent des droits (qui n'ont rien a voir avec ceux de
linux) des utilisateurs de l'extranet.

donc j'aimerai faire un serveur FTP qui prenne comme identifiant et mot de
passe l'id et le pass d'un membre de l'extranet et qui lui propose
uniquement les fichiers qu'il a le droit de voir.

donc il faut que je me tape un serveur FTP...
je vais sans doute le mettre en open source comme ca si ca peut servir a
quelqu'un.

voila
Etienne

Marc Quinton
Le #816194
Etienne SOBOLE wrote:

donc il faut que je me tape un serveur FTP...
je vais sans doute le mettre en open source comme ca si ca peut servir a
quelqu'un.


il y a deja nanoftp qui est en open source, codé OO et assez bien fait.
il n'a pas evolué depuis bien longtemps, mais ca devrait etre reprennable.

PS: mon message (hier) a ce sujet est pas passé.

Marc Quinton
Le #816195
je corrige mon precedent post, il s'agit de nanoftpd :

http://nanoftpd.sourceforge.net/
Etienne SOBOLE
Le #816003
http://nanoftpd.sourceforge.net/


super ;)
vais m'en inspirer...

merci beaucoup...
Etienne

bruno modulix
Le #816190
Etienne SOBOLE wrote:
Question con: pourquoi faire ?


c'etait sur que quelqu'un allait me poser la question.


Bin, ui, ya toujours un con de service !-)

'fin bon, c'est surtout histoire de t'éviter de réinventer la roue
carrée le cas échéant...


j'ai un extranet qui géré une GED.
les fichiers posés respectent des droits (qui n'ont rien a voir avec ceux de
linux) des utilisateurs de l'extranet.

donc j'aimerai faire un serveur FTP qui prenne comme identifiant et mot de
passe l'id et le pass d'un membre de l'extranet et qui lui propose
uniquement les fichiers qu'il a le droit de voir.


Certes, mais cela implique t'il nécessairement que:

donc il faut que je me tape un serveur FTP...


T'es-tu renseigné pour savoir s'il n'existait pas un serveur FTP
existant capable de supporter un système de gestion des droits externe ?
Allez, je te donne l'adresse :

http://www.proftpd.org


--
bruno desthuilliers
python -c "print '@'.join(['.'.join([w[::-1] for w in p.split('.')]) for
p in ''.split('@')])"


Etienne SOBOLE
Le #815799
http://www.proftpd.org


donc d'apres toi:
avec proFTPd je vais pouvoir :
- utiliser un fichier pour y stocker les user/password (je passe sur le
format, si faut que je le mette en forme ca ira)
- lire des fichers du HD en fonction de droit qui ne sont pas linux

Exemple:
j'ai un fichier toto.txt qui contient un texte et qui se trouve dans un
repertoire /rep
j'ai un fichier toto.pol (dans un autre répertoire) qui contient:
user1:rmdx
user2:r---
user3:rm--

avec r pour read
m pour modify
d pour delete
et x pour download (c'est une ged)

donc avec proftp, je vais pouvoir me connecter en tant que user1 (qui n'est
pas un user linux)
lire le fichier toto.pol qui contient les droits
et renvoyer le fichier toto.txt seulement si le caractère R est allumé dans
le fichier des droits?

Si on peut faire tout ca, c'est cool,
sinon ben je retourne a mon serveur FTP en php!!!

Etienne

Publicité
Poster une réponse
Anonyme