मैं निष्क्रिय मोड के साथ FTP का उपयोग करने की कोशिश की:
माणिक एफ़टीपी निष्क्रिय मोड त्रुटि
require 'net/ftp'
ftp = Net::FTP.new
ftp.passive = true
ftp.connect('mydomain.com')
ftp.login
filenames = ftp.nlst
लेकिन मिल गया है त्रुटि:
Errno::ETIMEDOUT: Connection timed out - connect(2)
हालांकि सक्रिय मोड के साथ यह काम करता है ठीक!
मैं रूबी 1.9.3 का उपयोग करता हूं।
ftp.debug_mode = true
मैं देख रहा हूँ:: जब मैं debuge मोड सेट
**ftp.connect('mydomain.com')**
connect: mydomain.com, 21
get: 220---------- Welcome to Pure-FTPd [privsep] ----------
get: 220-You are user number 3 of 50 allowed.
get: 220-Local time is now 11:43. Server port: 21.
get: 220-IPv6 connections are also welcome on this server.
get: 220 You will be disconnected after 15 minutes of inactivity.
=> nil
irb(main):103:0> ftp.login
put: USER anonymous
get: 230 Anonymous user logged in
put: TYPE I
get: 200 TYPE is now 8-bit binary
=> true
irb(main):104:0> filenames = ftp.nlst
put: TYPE A
get: 200 TYPE is now ASCII
put: PASV
get: 227 Entering Passive Mode (1,27,13,19,17,15)
put: TYPE I
get: 200 TYPE is now 8-bit binary
Errno::ETIMEDOUT: Connection timed out - connect(2)
इसके अलावा, मैं बाहर समारोह transfercmd
में Net::FTP
मेजबान से प्रयोग किया जाता है पाया है, कि, मेरे डोमेन आईपी पते से अलग! शायद यह एक निजी आईपी पता है? यहाँ क्या गलत है?
क्या आप सुनिश्चित हैं कि आपका सर्वर निष्क्रिय मोड की अनुमति देता है? ऐसा लगता है कि बंदरगाह बंद हैं –
क्या आपने मौसम जांच लिया है कि आपका सर्वर निष्क्रिय मोड को जोड़ने की क्षमता प्रदान करता है? – xyz
हां, मेरा सर्वर निष्क्रिय मोड को जोड़ने की क्षमता प्रदान करता है। मैंने एफ़टीपी क्लाइंट का उपयोग करके जांच की है। – Vasilina