J'ai un serveur FTP exécuté sur un serveur virtuel AWS. Nous avons environ 100 utilisateurs qui s'y connectent au cours d'une journée, en téléchargeant des images et d'autres fichiers. Tous sauf un fonctionnent parfaitement. Les fichiers arrivent, ce n'est pas un problème.Une erreur FTP (503 mauvaise séquence de commandes) résulte d'un problème client ou d'un problème serveur
Nous avons 1 utilisateur unique qui provoque les lignes de journaux suivants à générer - le nom d'utilisateur et IP a été supprimé intentionnellement et le « *** » a été ajouté pour mettre en évidence la ligne d'erreur:
> 227 Entering Passive Mode (54,79,122,6,195,96)
> STOR media/UV1358A_3.jpg
> 150 Opening data channel for file upload to server of "/media/UV1358A_3.jpg"
> 226 Successfully transferred "/media/UV1358A_3.jpg"
> PASV
> 227 Entering Passive Mode (54,79,122,6,195,141)
> STOR media/UV1358A_4.jpg
> 150 Opening data channel for file upload to server of "/media/UV1358A_4.jpg"
> PASV
> 227 Entering Passive Mode (54,79,122,6,195,136)
> 226 Successfully transferred ""
> STOR media/UV1358A_5.jpg
***********************************************
> 503 Bad sequence of commands.
***********************************************
> PASV
> 227 Entering Passive Mode (54,79,122,6,195,80)
> PORT 122,99,115,5,212,227
> 200 Port command successful
> PORT 122,99,115,5,226,227
> 200 Port command successful
> PORT 122,99,115,5,130,124
> 200 Port command successful
> STOR media/UV1358A_9.jpg
> 150 Opening data channel for file upload to server of "/media/UV1358A_9.jpg"
> PORT 122,99,115,5,152,62
> 200 Port command successful
> STOR media/UV1358A_10.jpg
> 150 Opening data channel for file upload to server of "/media/UV1358A_10.jpg"
> PORT 122,99,115,5,161,49
> 200 Port command successful
Nous utilisons FileZilla Server 0.9.55 sur une boîte de Windows 2012.
Ma question, comme indiqué dans le titre est essentiellement .. Est-ce notre problème sur le serveur, ou est-ce le leur? Cette erreur 503 est-elle toujours due au fait que le client FTP a vissé quelque chose ou est-il possible que le serveur FTP interprète mal quelque chose? Je suis heureux de retourner chez le client et de dire «C'est notre problème», mais je soupçonne que ce n'est pas de notre côté.
Merci
Merci Martin pour la réponse détaillée. Le client dit utiliser la bibliothèque FTP intégrée de PHP. Je vais sortir d'ici et dire qu'ils n'utilisent qu'une seule boucle filetée pour traiter les fichiers à télécharger. Ils ont déjà dit qu'ils téléchargent des fichiers sur des centaines de serveurs ftp d'autres clients sans problème et que nous sommes les seuls à avoir des problèmes et qu'ils ne feront donc pas de débogage à leur fin pour essayer de résoudre le problème. – Ads
La bibliothèque FTP PHP ne vous protégera pas contre la violation du protocole de la manière décrite, si vous utilisez une API non bloquante (['ftp_nb_fput'] (http://php.net/manual/fr/function.ftp- nb-fput.php)). J'étais capable de reproduire cela facilement. Utiliser du code multithread serait probablement reproduire cela aussi, bien que je ne l'ai pas essayé. –
N'êtes-vous pas géographiquement proche du client? Cela pourrait causer la différence aux autres serveurs. Si une latence est faible, les chances d'une condition de course comme celle-ci augmentent. –