diff --git a/basic-http-get/http_server_get.py b/basic-http-get/http_server_get.py
new file mode 100644
index 0000000000000000000000000000000000000000..e63802a2714c68ea1d945fd2e78cd7ac020fe3f9
--- /dev/null
+++ b/basic-http-get/http_server_get.py
@@ -0,0 +1,44 @@
+from http.server import BaseHTTPRequestHandler
+from urllib import parse
+
+
+class GetHandler(BaseHTTPRequestHandler):
+
+    def do_GET(self):
+        parsed_path = parse.urlparse(self.path)
+        message_parts = [
+            'CLIENT VALUES:',
+            'client_address={} ({})'.format(
+                self.client_address,
+                self.address_string()),
+            'command={}'.format(self.command),
+            'path={}'.format(self.path),
+            'real path={}'.format(parsed_path.path),
+            'query={}'.format(parsed_path.query),
+            'request_version={}'.format(self.request_version),
+            '',
+            'SERVER VALUES:',
+            'server_version={}'.format(self.server_version),
+            'sys_version={}'.format(self.sys_version),
+            'protocol_version={}'.format(self.protocol_version),
+            '',
+            'HEADERS RECEIVED:',
+        ]
+        for name, value in sorted(self.headers.items()):
+            message_parts.append(
+                '{}={}'.format(name, value.rstrip())
+            )
+        message_parts.append('')
+        message = '\r\n'.join(message_parts)
+        self.send_response(200)
+        self.send_header('Content-Type',
+                         'text/plain; charset=utf-8')
+        self.end_headers()
+        self.wfile.write(message.encode('utf-8'))
+
+
+if __name__ == '__main__':
+    from http.server import HTTPServer
+    server = HTTPServer(('localhost', 8080), GetHandler)
+    print('Starting server, use <Ctrl-C> to stop')
+    server.serve_forever()
\ No newline at end of file