不工作,我需要遠程登錄到我的同事對一個項目的服務器我的工作:的Telnet在Ruby中
telnet = Net::Telnet::new(
"Host" => "example_ip",
"Port" => 80,
"Timeout"=>90,
"Waittime" => 1,
"Output_log"=>"output_log.log",
"Dump_log"=> "dump_log.log"
)# => #<Net::Telnet:0x007f8142321c00 ...
telnet.cmd('ls') # => "HTTP/1.1 0 ERROR\n\nERROR 0\n"
我output_log樣子:
Trying example_ip...
Connected to example_ip.
HTTP/1.1 0 ERROR
ERROR 0
我知道他的服務器正在運行我可以連接到它。爲什麼我無法從Ruby連接?
(從OSX終端)
$ telnet example_ip 80
Trying example_ip...
Connected to c-example_ip...comcast.net.
Escape character is '^]'.
...
$ ls
_~1 .TRA 22 4096
TRASHE~1. 12 0
FSEVEN~1. 12 0
20110221.LOG 0 73
CONFIG . 0 573
20110223.LOG 0 95
20110224.LOG 0 17
20110225.LOG 0 17
20110315.LOG 0 73
...
編輯:
我試圖Telnetmode
設置Binmode
到false
,到false
,而對於一些Prompt
不同的值(但我不知道什麼是正確的)。
我正在使用Mac。嘗試在不同的端口上連接到他的IP(例如23,或將端口留空)不起作用。無法連接到遠程主機。 – AlexQueue 2013-02-09 23:58:22
我認爲你是對的,這是問題所在。圍繞它的任何想法?因爲他的東西託管在80端口上,我不確定他會不會再改變它。 – AlexQueue 2013-02-10 00:01:06
不要嘗試向端口80發出telnet命令。使用HTTP客戶端,如OpenURI進行試驗。我將添加一些示例代碼。 – 2013-02-10 00:30:19