Python SimpleHTTPServer 不断下降,我不知道为什么

标签 python web webserver simplehttpserver

这是我第一次使用 SimpleHTTPServer,老实说,这是我第一次使用一般的 Web 服务器,我遇到了一个令人沮丧的问题。我将启动我的服务器(通过 SSH),然后我将尝试访问它,一切都会好起来的。但我会在几个小时后回来,服务器将不再运行。到那时 SSH session 已经断开,所以我看不到是否有任何错误消息。 (是的,我知道我应该使用类似 screen 的东西来保存 shell 消息——现在就试试,但我需要等待它再次关闭。)

我认为这可能只是我的代码抛出异常,因为我没有错误处理,但我添加了一个应该是非常全面的 try/catch block ,但我仍然遇到这个问题。 (我觉得这可能不是错误处理的最佳方法,但我是新手...如果有更好的方法,请告诉我)

class MyRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
    # (this is the only function my request handler has)
    def do_GET(self):
        if 'search=' in self.path:
            try:
                # (my code that does stuff)
            except Exception as e:
                # (log the error to a file)
            return
        else:
            SimpleHTTPServer.SimpleHTTPRequestHandler.do_GET(self)

有没有人对检查事项或诊断问题的方法有任何建议?我猜,最有可能的是我的代码只是在其他地方崩溃了……但如果有什么特别需要我了解 SimpleHTTPServer 运行方式的,请告诉我。

最佳答案

我从来没有让 SimpleHTTPServer 长时间运行过,通常我只是用它以临时方式传输几个文件,但我想它不会那么糟糕只要您的安全限制在其他地方(即防火墙)并且您不需要太大的规模。

SSH session 即将结束,这会终止您的任务(前台和后台任务)。有两种解决方案:

  1. 就像您已经提到的那样,使用诸如屏幕之类的实用程序来防止您的 session 结束。
  2. 如果你真的想让它运行更长的时间,你应该查看操作系统的文档,了解如何启动/停止/启用服务(现在大多数酷 child 都在使用 systemd ,但您可能还会发现自己在使用 SysVinit 或其他一些初始化系统)

编辑:

此链接在评论中,但我认为我应该放它 here因为它很好地回答了这个问题

关于Python SimpleHTTPServer 不断下降,我不知道为什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36338310/

相关文章:

apache - .htaccess 根据浏览器重定向到特定网页

python - TimeDistributed(BatchNormalization) 与 BatchNormalization

python - 正确使用 Flask-ldap

python - 所有排列的列表,但没有相反的数字

html - 初学者 : Creating Buckets in HTML and CSS

html - CSS 中的 Y 轴滚动?

python - 如何使用Python在本地服务器上进行基本的CRUD?

python - Django Admin 中的密码小部件和密码散列

html - HTML5 Web音频API-临时录制声音

php - .php 网址到 .html 网址