2015-11-03 1 views
0

J'ai un site hébergé sur une instance Amazon EC2. à partir de ce site (page) J'essaie de télécharger le fichier sur un serveur FTP (non hébergé chez Amazon). chaque fois que j'obtiens le message d'erreur que la connexion client a été fermée avec force par remotehost.téléchargement de fichier depuis le site hébergé d'amazon vers un autre serveur ftp

Même code fonctionne très bien dans mon local et quelques autres machines locales à l'extérieur de mes réseaux de bureau.

Ce code ne fonctionne pas à partir de serveurs Amazon/Azure.

J'ai ouvert tous les ports et le trafic pour les ports entrants/sortants

quelqu'un peut me aider à comprendre la question.

mon serveur est Windows 2012 serveur r2.

tout le trafic est ouvert pour in/out. Le site est développé sur asp.net avec un contrôle web FTP illimité. Le serveur ftp prend en charge le mode actif et fonctionne à partir des machines locales de mes réseaux et de quelques autres machines.

Merci, Devang

Répondre

1

Vérifiez que vous pouvez vous connecter via FTP à partir de votre instance EC2 sans utiliser votre code. Si vous pouvez vous connecter via une ligne de commande, ou avec une application FTP, alors vous savez que c'est un problème avec votre code (et pas un autre problème de blocage d'IP).

0

Je peux me connecter à ce serveur en utilisant filezilla en mode de transfert actif. J'ai mis le même dans le code aussi mais incapable de télécharger le dossier.

veuillez trouver le code ci-dessous.

// Enregistrer le gestionnaire dans l'événement CommandResponse. myclient.CommandResponse + = client_CommandResponse;

 // Connect to the server. 


     myclient.Passive = false; 
     myclient.Connect(host, port); 
     myclient.KeepAliveDuringTransferInterval = 5000; 
     myclient.Timeout = 200000; 


     // Authenticate. 
     myclient.Authenticate(username, password); 

     // Upload the file. 
     myclient.UploadFile(serverFilePath, ComponentPro.IO.FileSystemPath.Combine(rootfolder, fileUpload.FileName)); 

     // Disconnect when finish. 
     myclient.Disconnect(); 
     lblResult.Text = _sb.ToString(); 

Merci pour l'aide.