例如http://www.utorrent.com/testport?port=12345
这是如何工作的?服务器端脚本是否可以尝试打开套接字?
答案 0 :(得分:1)
服务器端脚本将尝试在指定端口上打开与原始IP的连接。
如果没有响应(尝试将超时),这将表示端口未打开。
答案 1 :(得分:1)
通过服务器端脚本实现此目的的方法有很多种。正如@Oded所提到的,大多数服务器端处理程序都能够在任意端口上启动套接字连接,其中大多数甚至都有专用的端口扫描包/库(PHP在PEAR存储库中有one,Python的'socket'模块使这类任务变得轻而易举......)
请记住,在共享主机平台上,出于安全目的,通常会禁用套接字连接。
另一种非常容易实现的方法是使用命令行端口扫描程序,例如服务器端脚本中的nmap。即在PHP中,你会回复``nmap -p $ port $ ip \
答案 2 :(得分:0)
服务器可以试试,正如@Oded所说。但这并不能确保接收方能够做出回应。
答案 3 :(得分:0)
通常情况下会发生这样的事情:
URL请求包含有关要访问的端口的说明。您的浏览器发送的标头包含有关请求来源的信息。
在响应请求之前,服务器会尝试打开端口并检查是否成功。它会在超时之前等待一段时间。
根据此测试的结果动态呈现网页。
包含结果的回复将返回给您。
有时步骤(2)和(3)将被替换为AJAX回调,这允许响应更快地返回。