Comment dépanner les téléchargements FTP ayant échoué à l'aide de PHP ftp_put ?

DDD
Libérer: 2024-10-23 17:47:02
original
534 Les gens l'ont consulté

How to Troubleshoot Failed FTP Uploads Using PHP ftp_put?

Dépannage des échecs de téléchargement FTP avec PHP ftp_put

Problème :

Lors de la tentative de téléchargement d'un XML sur un serveur FTP à l'aide de ftp_put, l'opération échoue systématiquement et renvoie false.

Résolution :

Passer en mode FTP passif :

La raison la plus courante des échecs de ftp_put est le comportement par défaut de PHP, qui utilise le mode FTP actif. Dans de nombreux cas, la solution consiste à passer en mode passif à l'aide de la fonction ftp_pasv. Voici l'extrait de code :

<code class="php">$connect = ftp_connect($ftp) or die("Unable to connect to host");
ftp_login($connect, $username, $pwd) or die("Authorization failed");
ftp_pasv($connect, true) or die("Unable switch to passive mode");</code>
Copier après la connexion

Configurer l'adressage PASV :

Si votre serveur FTP signale une adresse IP incorrecte en réponse à la commande PASV en raison d'un pare-feu ou d'un NAT utilisation, vous pouvez contourner le problème en désactivant FTP_USEPASVADDRESS :

<code class="php">ftp_set_option($connect, FTP_USEPASVADDRESS, false);</code>
Copier après la connexion

Ressources supplémentaires :

  • [PHP ftp_put échoue avec "Avertissement : ftp_put() : Commande PORT réussie"](https://stackoverflow.com/questions/13218988/php-ftp-put-fails-with-warning-ftp-put-port-command-successful)
  • [Actif et Passif Modes de connexion FTP](https://stackoverflow.com/questions/10037230/how-can-i-check-if-passive-ftp-mode-is-enabled-in-php)
  • [PHP FTP Serveur FTP passif derrière NAT](https://stackoverflow.com/questions/3054294/php-ftp-passive-ftp-server-behind-nat)

Remarque :

Il est important de noter que ftp_pasv doit être appelé après ftp_login pour avoir un effet.

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!

source:php
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!