Last active
August 31, 2023 11:17
-
-
Save davidwtbuxton/c108bd9f1e7b02cf569e67da7e30ac63 to your computer and use it in GitHub Desktop.
Revisions
-
davidwtbuxton revised this gist
Aug 31, 2023 . 1 changed file with 1 addition and 3 deletions.There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -1,4 +1,3 @@ import http @@ -19,10 +18,9 @@ def app(environ, start_response): """Respond with a 404 for everything.""" status = http.HTTPStatus.NOT_FOUND response_status = f"{status.value} {status.phrase}" headers = [("Content-type", "text/html; charset=utf-8")] start_response(response_status, headers) response_body = body.format(status=status).encode("utf-8") return [response_body] -
davidwtbuxton created this gist
Aug 31, 2023 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,2 @@ # For App Engine. runtime: python311 This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,34 @@ import html import http body = """<!DOCTYPE html> <html lang=en> <meta charset=utf-8> <meta name=viewport content="initial-scale=1, minimum-scale=1, width=device-width"> <title>{status.value} {status.phrase}</title> <style> *{{margin:0;padding:0}}html,code{{font:15px/22px arial,sans-serif}}html{{background:#fff;color:#222;padding:15px}}body{{margin:7% auto 0;max-width:390px;min-height:180px;padding:30px 0 15px}}* > body{{background:url(//www.google.com/images/errors/robot.png) 100% 5px no-repeat;padding-right:205px}}p{{margin:11px 0 22px;overflow:hidden}}ins{{color:#777;text-decoration:none}}a img{{border:0}}@media screen and (max-width:772px){{body{{background:none;margin-top:0;max-width:none;padding-right:0}}}}#logo{{background:url(//www.google.com/images/branding/googlelogo/1x/googlelogo_color_150x54dp.png) no-repeat;margin-left:-5px}}@media only screen and (min-resolution:192dpi){{#logo{{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat 0% 0%/100% 100%;-moz-border-image:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) 0}}}}@media only screen and (-webkit-min-device-pixel-ratio:2){{#logo{{background:url(//www.google.com/images/branding/googlelogo/2x/googlelogo_color_150x54dp.png) no-repeat;-webkit-background-size:100% 100%}}}}#logo{{display:inline-block;height:54px;width:150px}} </style> <a href="https://www.google.com"><span id=logo aria-label=Google></span></a> <p><b>{status.value} {status.phrase}.</b> <ins>That's all we know.</ins> """ def app(environ, start_response): """Respond with a 404 for everything.""" status = http.HTTPStatus.NOT_FOUND response_status = f"{status.value} {status.phrase}" url = "https://www.google.com/" headers = [("Content-type", "text/html; charset=utf-8")] start_response(response_status, headers) response_body = body.format(status=status, url=html.escape(url)).encode("utf-8") return [response_body] if __name__ == "__main__": import wsgiref.simple_server with wsgiref.simple_server.make_server("", 8000, app) as server: server.serve_forever()