#!/usr/bin/env python3

import http.server

PORT = 8880

class HTTPHandler(http.server.BaseHTTPRequestHandler):
    protocol_version = 'HTTP/1.0'
    def version_string(self):
        return 'HTTPServer' 
    def do_HEAD(self):
        self.send_response(200)
        self.end_headers()

    def do_GET(self):
        response = b'OK'

        self.send_response(200)
        self.send_header('Content-Type', 'text/plain; charset=utf-8')
        self.send_header('Content-Length', str(len(response)))
        self.end_headers()
        self.wfile.write(response)

    def do_POST(self):
        return self.do_GET()

class Server(http.server.ThreadingHTTPServer):
    allow_reuse_address = True

if __name__ == '__main__':
    import argparse
    import logging
    parser = argparse.ArgumentParser(description='HTTP Server')
    parser.add_argument('--debug', action='store_true')
    parser.add_argument('--host', default='')
    parser.add_argument('--port', type=int, default=PORT)
    args = parser.parse_args()
    if args.debug:
        logging.basicConfig(level=logging.DEBUG)
    else:
        logging.basicConfig(level=logging.INFO)
    logging.info(f'Starting HTTP Server on {args.host}:{args.port}')
    with Server((args.host, args.port), HTTPHandler) as server:
        server.serve_forever()
