首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用SimpleHTTPServer禁用索引文件

使用SimpleHTTPServer禁用索引文件
EN

Stack Overflow用户
提问于 2016-11-22 10:50:12
回答 1查看 3.6K关注 0票数 4

默认情况下,SimpleHTTPServer使用index.html作为索引文件,我希望禁用它们并始终显示目录索引。

我怎么能这么做?文件在这里对此一言不发

EN

回答 1

Stack Overflow用户

发布于 2016-11-22 11:00:30

简单的方法:

将索引文件重命名为其他任何内容

一种更复杂的方法:

您必须使用如下内容覆盖SimpleHTTPRequestHandler的translate_path方法:

代码语言:javascript
复制
import BaseHTTPServer
import SimpleHTTPServer
server_address = ("", 8888)
PUBLIC_RESOURCE_PREFIX = '/public'
PUBLIC_DIRECTORY = '/path/to/protected/public'

class MyRequestHandler(SimpleHTTPServer.SimpleHTTPRequestHandler):
    def translate_path(self, path):
        if self.path.startswith(PUBLIC_RESOURCE_PREFIX):
            if self.path == PUBLIC_RESOURCE_PREFIX or self.path == PUBLIC_RESOURCE_PREFIX + '/':
                return PUBLIC_DIRECTORY + path[len(PUBLIC_RESOURCE_PREFIX):]
        else:
            return SimpleHTTPServer.SimpleHTTPRequestHandler.translate_path(self, path)

httpd = BaseHTTPServer.HTTPServer(server_address, MyRequestHandler)
httpd.serve_forever()
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40739894

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档