【问题标题】:How can we test the address of the server我们如何测试服务器的地址
【发布时间】:2014-07-29 12:36:14
【问题描述】:

我使用该命令恢复服务器的地址: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()

【问题讨论】:

  • 根据this question,代码是正确的。你到底是什么意思“显示页面时连接失败”?句子很混乱。请确保您使用正确的英语时态。
  • 代码非常混乱:主要的参数是什么?他们来自哪里? html.py 在你使用替代() 之前是什么样子的?
  • @AaronDigulla :当我点击“确定”时,它会打开带有正确 URL 的下一页,但连接失败,我不知道为什么 :((但我认为这不是大问题)。
  • @loli :我在命令行中执行我的脚本,当我显示我的变量时,html.py 仅在一个 html 代码中......
  • @AaronDigulla :是的,代码很好,但是现在,我想知道如果有人测试这个应用程序,它会在 thr URL 中返回服务器的地址..

标签: python html web client-server


【解决方案1】:

关于你的问题:

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

另见:http://en.wikipedia.org/wiki/Localhost

【讨论】:

    【解决方案2】:

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

    【讨论】:

      猜你喜欢
      • 2011-03-21
      • 2014-11-20
      • 1970-01-01
      • 1970-01-01
      • 2012-03-24
      • 2016-07-13
      • 2018-08-03
      • 1970-01-01
      • 2010-09-13
      相关资源
      最近更新 更多