반응형
웹 서버(apache, nginx...)와 애플리케이션을 만들 수 있는 언어(python, php, java...)가
연동을 하기 위해서는 표준화된 약속이 필요
그 약속이 CGI(Common Gateway Interface)
CGI가 등장한 이후 여러 단점이 있기에 요즘에는 잘 사용되지 않음
요즘에는 fastCGI, WSGI 등을 사용하지만 본질적으로 CGI와 크게 다르지 않음
웹서버 전달하는 데이터 확인하기
cgi_env.py
#!/usr/local/bin/python3
print("content-type:text/html; charset=UTF-8\n")
import cgi
cgi.test()
cgi_env.py에 권한주기
sudo chmod a+x cgi_env.py
http://localhost:8000/cgi_env.py에 접속하면 cgi_env.py가 웹서버에 전달하는 정보 출력됨
주소를 http://localhost:8000/cgi_env.py?id=HTML로 바꿔보면 내용에
QUERY_STRING id=HTML 라고 나옴
CGI는 웹서버가 사용자 요청을 받았을 때 웹 애플리케이션이 처리할 수 있도록
Query String과 같은 약속되어 있는 데이터를 환경변수라는 형태로 전달
반응형
'Dev > Python' 카테고리의 다른 글
[Python] 파일 읽기 open().read() (0) | 2020.08.22 |
---|---|
[Python] cgi.FieldStorage() (0) | 2020.08.22 |
Python 설치 및 실행(Mac OS) (0) | 2020.08.21 |
Python을 배우는 이유? (0) | 2020.08.20 |
Python으로 웹 애플리케이션 구현? (0) | 2020.08.20 |