zoukankan      html  css  js  c++  java
  • 05 通过python开启静态http服务

    python2 :

    #ipv4
    python -m SimpleHTTPServer 8080
    python -m SimpleHTTPServer 8080 --bind 127.0.0.1
    python -m SimpleHTTPServer 8080 --bind 0.0.0.0
    
    #ipv6
    python -c "import socket,SocketServer,CGIHTTPServer;SocketServer.TCPServer.address_family=socket.AF_INET6;CGIHTTPServer.test()" 8080
    

    python3 :

    https://docs.python.org/3/library/http.server.html

    不指定端口的话默认为8000端口, 推荐使用80端口

    # ipv4
    python3 -m http.server 8080
    python3 -m http.server 8080 --bind 127.0.0.1
    python3 -m http.server 8080 --bind 0.0.0.0
    #指定目录,需要python3.7以上版本,-d/--directory
    python3 -m http.server 8080 --bind 0.0.0.0 -d /tmp/ 
    

    补充 :

    # 如果不指定目录的话, 你在哪个路径下执行的这个开启http服务的命令, 默认的物理路径就是当前路径
    # 所以推荐做测试的时候, 可以单独新建一个文件夹, 这样可以减少信息泄露
    

    使用utf-8编码:

    避免出现中文乱码情况

    webserver - How can I serve files with UTF-8 encoding using Python SimpleHTTPServer? - Stack Overflow

    python2 :

    python -c "import SimpleHTTPServer; m = SimpleHTTPServer.SimpleHTTPRequestHandler.extensions_map; m[''] = 'text/plain'; m.update(dict([(k, v + ';charset=UTF-8') for k, v in m.items()])); SimpleHTTPServer.test();"
    # 指定端口
    python -c "import SimpleHTTPServer; m = SimpleHTTPServer.SimpleHTTPRequestHandler.extensions_map; m[''] = 'text/plain'; m.update(dict([(k, v + ';charset=UTF-8') for k, v in m.items()])); SimpleHTTPServer.test();" 8080
    # 指定端口和bind
    python -c "import SimpleHTTPServer; m = SimpleHTTPServer.SimpleHTTPRequestHandler.extensions_map; m[''] = 'text/plain'; m.update(dict([(k, v + ';charset=UTF-8') for k, v in m.items()])); SimpleHTTPServer.test();" 8080 --bind 0.0.0.0
    

    python3:

    #默认端口8000
    python3 -c "from http.server import test, SimpleHTTPRequestHandler as RH; RH.extensions_map={k:v+';charset=UTF-8' for k,v in RH.extensions_map.items()}; test(RH)"
    # 指定端口
    python3 -c "from http.server import test, SimpleHTTPRequestHandler as RH; RH.extensions_map={k:v+';charset=UTF-8' for k,v in RH.extensions_map.items()}; test(RH)" 8080
    # 指定端口和bind
    python3 -c "from http.server import test, SimpleHTTPRequestHandler as RH; RH.extensions_map={k:v+';charset=UTF-8' for k,v in RH.extensions_map.items()}; test(RH)" 8080 --bind 0.0.0.0
    
  • 相关阅读:
    LPC1768基本输入输出GPIO使用
    LPC1768IAP(详解,有上位机)
    STM32_IAP详解(有代码,有上位机)
    ucos2.86的任务调度漏洞
    ucos任务优先级从64到256,任务就绪表的改变
    ucos互斥信号量解决优先级反转问题
    ucos信号量集源码分析
    ucos内存管理原理详解
    ucos队列的实现--源码分析
    ucos调度器详解
  • 原文地址:https://www.cnblogs.com/xcymn/p/14682425.html
Copyright © 2011-2022 走看看