我们如何测试服务器的地址

时间:2014-07-29 12:36:15

标签: python html web client-server

我使用该命令恢复服务器的地址:socket.gethostbyname(socket.gethostname())

所以,在file1.py我有:

def main( server_IP, name, version, install_path):

  template = open('html.py').read()

  c = string.Template(template).substitute(
            name = name,
            version = version,
            install_path = install_path,
            os = user_os,
            user_name = user_login,
            server_IP = socket.gethostbyname(socket.gethostname())
            )
html.py

中的

<form name="sendData" method="get" action="http://${server_IP}/cgi/scriptGet.py">

当我在自己的电脑上测试时,我有127.0.0.1/cgi .......(实际上: 显示此页面时连接失败。)

如何确保恢复服务器的地址?

服务器代码

import BaseHTTPServer
import CGIHTTPServer
import cgitb; cgitb.enable() 

server = BaseHTTPServer.HTTPServer
handler = CGIHTTPServer.CGIHTTPRequestHandler

server_address = ("", 8000)
handler.cgi_directories = ["/cgi"]
httpd = server(server_address, handler)
httpd.serve_forever()

2 个答案:

答案 0 :(得分:0)

关于你的问题:

代码完成了它所期望的。如果在家用机器上运行它,`socket.gethostname()'返回的主机名是'localhost'。并且'localhost'的IP总是'127.0.0.1'。

另请参阅:http://en.wikipedia.org/wiki/Localhost

答案 1 :(得分:0)

如果连接失败,则服务器端必定存在错误。这意味着URL很好但是有些东西中断了,您应该在错误日志或启动服务器的终端中看到错误。