RCurl HTTP ਟਨਲ ਰਾਹੀਂ FTP ਭੇਜ ਸਕਦਾ ਹੈ
ਜਦੋਂ ਪ੍ਰੌਕਸੀ ਨੂੰ FTP URL ਵਾਲਾ HTTP GET ਲੈਣ ਦੀ ਥਾਂ FTP ਪ੍ਰੋਟੋਕੋਲ ਢੋਣਾ ਹੋਵੇ, ਤਾਂ httpproxytunnel ਵਰਤੋ।
libcurl ਕੋਲ FTP URL ਲਈ HTTP ਪ੍ਰੌਕਸੀ ਵਰਤਣ ਦੇ ਦੋ ਵੱਖਰੇ ਤਰੀਕੇ ਹਨ। ਟਨਲ ਤੋਂ ਬਿਨਾਂ, ਇਹ ਉਹ HTTP GET ਭੇਜ ਸਕਦਾ ਹੈ ਜਿਸਦਾ ਟੀਚਾ FTP URL ਹੈ, ਅਤੇ ਪ੍ਰੌਕਸੀ ਨੂੰ FTP ਗੇਟਵੇ ਵਜੋਂ ਕੰਮ ਕਰਨ ਲਈ ਕਹਿੰਦਾ ਹੈ।
ਜਦੋਂ ਸੇਵਾ ਇਸਦੀ ਥਾਂ HTTP CONNECT ਟਨਲ ਦੀ ਉਮੀਦ ਕਰਦੀ ਹੈ, ਤਾਂ RCurl ਦਾ ਸੰਬੰਧਿਤ ਵਿਕਲਪ ਚਾਲੂ ਕਰੋ:
result <- RCurl::getURL(
"ftp://ftp.example.net/pub/file.txt",
.opts = list(
proxy = "http://proxy.example.net:8080",
httpproxytunnel = TRUE
)
)
ਪ੍ਰੌਕਸੀ ਨੂੰ FTP ਸਰਵਰ ਦੇ ਲੋੜੀਂਦੇ ਪੋਰਟਾਂ ਨਾਲ ਕਨੈਕਸ਼ਨ ਦੀ ਇਜਾਜ਼ਤ ਦੇਣੀ ਚਾਹੀਦੀ ਹੈ। 443 'ਤੇ ਸਿਰਫ਼ CONNECT ਤੱਕ ਸੀਮਿਤ ਸੇਵਾ FTP ਦੇ ਕੰਟਰੋਲ ਕਨੈਕਸ਼ਨ ਨੂੰ ਰੱਦ ਕਰ ਸਕਦੀ ਹੈ, ਭਾਵੇਂ ਆਮ HTTPS ਬ੍ਰਾਊਜ਼ਿੰਗ ਕੰਮ ਕਰਦੀ ਹੋਵੇ।
FTP ਸੂਚੀ ਜਾਂ ਟ੍ਰਾਂਸਫਰ ਲਈ ਵੱਖਰਾ ਡੇਟਾ ਕਨੈਕਸ਼ਨ ਵੀ ਵਰਤਦਾ ਹੈ। ਸਫਲ ਕੰਟਰੋਲ ਲੌਗਇਨ ਇਹ ਸਾਬਤ ਨਹੀਂ ਕਰਦਾ ਕਿ ਤੈਅ ਕੀਤਾ ਡੇਟਾ ਟਿਕਾਣਾ ਵਿਚੋਲੇ ਰਾਹੀਂ ਮਨਜ਼ੂਰ ਹੈ।
ਇਹ ਮੋਡ FTP ਪ੍ਰੋਟੋਕੋਲ ਨੂੰ ਟਨਲ ਰਾਹੀਂ ਢੋਂਦਾ ਹੈ; ਇਹ ਸਾਧਾਰਨ FTP ਨੂੰ ਐਨਕ੍ਰਿਪਟ ਨਹੀਂ ਕਰਦਾ। ਜਦੋਂ ਗੁਪਤਤਾ ਲੋੜੀਂਦੀ ਹੋਵੇ ਤਾਂ ਫਾਈਲ ਸਰਵਰ ਵੱਲੋਂ ਸਮਰਥਿਤ ਸੁਰੱਖਿਅਤ ਪ੍ਰੋਟੋਕੋਲ ਅਤੇ ਢੁਕਵਾਂ libcurl ਬਿਲਡ ਵਰਤੋ। RCurl ਦੇ ਉਪਲਬਧ ਪ੍ਰੋਟੋਕੋਲ ਇਸ ਵੱਲੋਂ ਵਰਤੀ ਜਾਂਦੀ libcurl ਲਾਇਬ੍ਰੇਰੀ 'ਤੇ ਨਿਰਭਰ ਕਰਦੇ ਹਨ।