【问题标题】:Python SimpleHTTPServer serving wrong index.html?Python SimpleHTTPServer 服务错误的 index.html?
【发布时间】:2015-01-31 05:21:01
【问题描述】:

我有一个用于查看我正在处理的网页的简单脚本。

import SimpleHTTPServer
import SocketServer
PORT = 8000 
Handler = SimpleHTTPServer.SimpleHTTPRequestHandler
httpd = SocketServer.TCPServer(("", PORT), Handler)
print "serving at port", PORT
httpd.serve_forever()

我已将此脚本复制到几个目录,其中包含我正在处理的不同 index.html 页面。我杀死了服务 index_A 的服务器(在它自己的目录 Development/A 中)。但是,当我尝试在 Development/B 中运行脚本(应该为 index_B 服务)时,它仍在为 index_A 服务。

编辑:当我更改我正在使用的端口时,它会提供正确的索引。仍然不确定为什么旧索引会出现在旧端口中,即使我终止了进程。

【问题讨论】:

  • 你真的要杀死原来的(A)服务器进程吗?您确定在运行B 服务器之前已切换目录吗?您是否已确认——我的意思是真的用新鲜的眼光看以确保——内容是你认为的?很抱歉直言不讳,但最可能的解释是飞行员错误。
  • 我在这里使用了 filip 的解决方案:stackoverflow.com/questions/3855127/… 来杀死进程,这还不够吗?我确信在不同的目录中运行它。
  • 那里有很多解决方案,但我假设您的意思是kill -9 `lsof -i :8000 | egrep -v PID | awk '{print $2}'`,应该是可靠的。

标签: python html web


【解决方案1】:

我也遇到了同样的问题,非常痛苦和固执。在这里尝试了所有建议以及here 与命令freeportnetstatpslsofkill。几个小时后发现这是更基本的东西。即使在多次重新启动后,相同的index.html 仍然在0.0.0.0:8000 上提供服务。但是尝试了其他浏览器,它只发生在 Chrome 中!所以清除了缓存,它就消失了。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-09-23
    • 2021-09-15
    • 2017-11-23
    • 1970-01-01
    • 2012-09-15
    • 1970-01-01
    • 2011-07-11
    • 2019-02-12
    相关资源
    最近更新 更多