Омар Моллаев před 2 roky
rodič
revize
91647167f3
3 změnil soubory, kde provedl 38 přidání a 20 odebrání
  1. 6 0
      .idea/vcs.xml
  2. 8 0
      dockerfile
  3. 24 20
      main.py

+ 6 - 0
.idea/vcs.xml

@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<project version="4">
+  <component name="VcsDirectoryMappings">
+    <mapping directory="$PROJECT_DIR$" vcs="Git" />
+  </component>
+</project>

+ 8 - 0
dockerfile

@@ -0,0 +1,8 @@
+from python3.10-slim
+
+RUN pip install --no-cache-dir --upgrade pip \
+  && pip install --no-cache-dir -r requests
+
+COPY main.py
+CMD ["python3","./main.py"]
+EXPOSE 8000

+ 24 - 20
main.py

@@ -1,38 +1,41 @@
+from http.server \
+    import HTTPServer, BaseHTTPRequestHandler
+import requests
+import datetime
 
 
-from http.server import HTTPServer, BaseHTTPRequestHandler
-
-
-class HttpGethandler(BaseHTTPRequestHandler):
+class HttpGetHandler(BaseHTTPRequestHandler):
     def do_GET(self):
     def do_GET(self):
         try:
         try:
-            if self.path.endswith("/OK"):
+            if self.path.endswith("/Status"):
                 self.send_response(200)
                 self.send_response(200)
-
-                self.send_header("Content-type", "text/html")
+                self.send_header("Content-type","text/html")
                 self.end_headers()
                 self.end_headers()
-
-                http_text = """<html><head><meta charset='utf-8'
-                                <title>Есть</title></head>
-                                <body>HTTP-статус 200</body></html>"""
-
+                get = requests.get('https://api.ipify.org/')
+                http_text = f"<html><head><meta charset = 'utf-8'>" \
+                            f"<title>Простой HTTP-сервер.</title></head>" \
+                            f"<body>Ваш адресс {get.text}.<br>" \
+                            f"<body> Моллаев Омар Рашидович 701(3) группа <br>" \
+                            f"Время на сервере {str(datetime.datetime.now())}" \
+                            f"</body></html>"
                 self.wfile.write(http_text.encode())
                 self.wfile.write(http_text.encode())
 
 
+
             if self.path.endswith("/info"):
             if self.path.endswith("/info"):
                 self.send_response(200)
                 self.send_response(200)
-
                 self.send_header("Content-type", "text/html")
                 self.send_header("Content-type", "text/html")
                 self.end_headers()
                 self.end_headers()
 
 
-                http_text = """<html><head><meta charset='utf-8'
-                                <title>Моллаев Омар Рашидович 701(3)</title></head></html>"""
+                html = """ <html><head><meta charset = 'utf-8'>
+                                <title>Простой HTTP-сервер.</title></head>
+                                <body>Моллаев Омар Рашидович,студент 701(3) группы.</body></html> """
 
 
-                self.wfile.write(http_text.encode())
+                self.wfile.write(html.encode())
 
 
         except IOError:
         except IOError:
-            self.send_error(400, "No found {self.path}")
+            self.send_error(400,"File not found{self.path}")
 
 
 
 
-def main(server_class=HTTPServer, handler_class=HttpGethandler):
+def main(server_class=HTTPServer, handler_class=HttpGetHandler):
     server_address = ('localhost', 8000)
     server_address = ('localhost', 8000)
     httpd = server_class(server_address, handler_class)
     httpd = server_class(server_address, handler_class)
     try:
     try:
@@ -41,8 +44,9 @@ def main(server_class=HTTPServer, handler_class=HttpGethandler):
 
 
     except KeyboardInterrupt:
     except KeyboardInterrupt:
         httpd.server_close()
         httpd.server_close()
-        print("Красный Свет")
+        print("Красный свет")
 
 
 
 
 if __name__ == '__main__':
 if __name__ == '__main__':
-    main()
+    main()
+