Maison  >  Article  >  développement back-end  >  PHP SFTP implémente le partage de la force du code des fonctions de téléchargement et de téléchargement

PHP SFTP implémente le partage de la force du code des fonctions de téléchargement et de téléchargement

巴扎黑
巴扎黑original
2017-09-08 15:07:161594parcourir

Cet article présente principalement en détail les fonctions de téléchargement et de téléchargement de PHP SFTP. Il a une certaine valeur de référence. Les amis intéressés peuvent s'y référer

1. Introduction à SFTP :

Le protocole qui utilise le protocole SSH pour la transmission FTP est appelé SFTP (Secure File Transfer). Sftp et Ftp sont tous deux des protocoles de transfert de fichiers. Différence : sftp est un protocole inclus dans ssh (ssh est un protocole telnet crypté). Tant que le serveur sshd est démarré, il est disponible. De plus, sftp est plus sécurisé et ne nécessite pas le démarrage du serveur ftp. sftp = ssh + ftp (Secure File Transfer Protocol). Étant donné que FTP transmet du texte brut, il n'y a aucune sécurité, tandis que FTP est basé sur SSH et le contenu de la transmission est crypté, ce qui est plus sécurisé. Le réseau actuel n'est pas très sécurisé. Ceux qui utilisaient telnet dans le passé sont passés à ssh2 (SSH1 a été cracké).

L'outil sftp est utilisé de la même manière que ftp. Cependant, ses fichiers transmis sont cryptés via SSL et ne peuvent pas être piratés même s'ils sont interceptés. De plus, sftp a plus de fonctions que ftp, y compris certains paramètres d'attributs de fichier supplémentaires.


2. Configuration de l'extension SSH2

1. Adresse de téléchargement : http://windows.php.net/downloads/pecl/releases/ ssh2/0.12/


Choisissez le package d'extension en fonction de votre version de php Ici, j'utilise php5.3, j'ai donc téléchargé php_ssh2-0.12-5.3-ts-vc9-x86.zip ( Lien de téléchargement. )

2. Après décompression, il y aura trois fichiers, libssh2.dll, php_ssh.dll, php_ssh2.pdb.


3. Placez php_ssh.dll et php_ssh2.pdb sous votre répertoire d'extension php php/ext/.


4. Copiez libssh2.dll dans c:/windows/system32 et c:/windows/syswow64


5. Ajoutez-le à php.ini extension=php_ssh2. dll


6. Redémarrez Apache et imprimez phpinfo(); L'extension SSH2 apparaîtra, indiquant une installation réussie

3. SFTP code DEMO

Code d'appel


 $config = array(
  'host' =>'211.*.*.*', //服务器
  'port' => '23', //端口
  'username' =>'test', //用户名
  'password' =>'*****', //密码
 );
 $ftp = new Sftp($config);
 $localpath="E:/www/new_20170724.csv";
 $serverpath='/new_20170724.csv';
 $st = $ftp->upftp($localpath,$serverpath); //上传指定文件
 if($st == true){
  echo "success";
  
 }else{
  echo "fail";
 }
Classe d'encapsulation SFTP



Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn