HTTP 서버를 만드는 코드

2024. 9. 5. 20:10aws.cloud

반응형

http.server 모듈과 socketserver 모듈을 사용하여 HTTP 요청을 처리하는 코드이다.

import http.server
import socketserver

handler = http.server.SimpleHTTPRequestHandler

with socketserver.TCPServer(('', 8080), handler) as httpd:
  print('Server listening on port 8080....')
  httpd.serve_forever()



- http.server: Python 표준 라이브러리로, 기본적인 HTTP 요청 처리 핸들러를 제공한다. SimpleHTTPRequestHandler는 간단한 파일 서버 역할을 한다.
- socketserver: TCP/UDP 서버를 쉽게 구현할 수 있게 해주는 모듈이다. 이 코드에서는 TCP 서버를 만들기 위해 사용된다.

- SimpleHTTPRequestHandler: HTTP 요청을 처리하는 핸들러로, 기본적으로 현재 디렉토리에서 파일을 서빙한다. 브라우저가 서버에 요청을 보내면 이 핸들러가 요청을 처리한다.


- socketserver.TCPServer: TCP 연결을 수립하고 클라이언트로부터의 요청을 처리하는 서버 객체를 생성한다.
- ('', 8080): 빈 문자열('')은 서버가 모든 네트워크 인터페이스에서 요청을 수신하게끔 설정
- handler: 앞에서 정의한 SimpleHTTPRequestHandler가 요청을 처리하는 핸들러로 지정된다.
- as httpd: 서버 객체가 httpd라는 이름으로 정의된다.
- serve_forever(): 서버가 종료될 때까지 클라이언트로부터의 요청을 계속 처리하는 메서드이다. 서버가 실행되는 동안 클라이언트의 요청을 받아 응답한다.

 
 

 

 

반응형