1일차
수업소개
실습준비 - 설치 및 연동
문법 - 데이터 타입 - 숫자
문법 - 데이터 타입 - 문자열
활용 - 홈페이지를 CGI로 구현
활용 - URL query string을 가져오는 방법
활용 - CGI 소개
문법 - 제어문 소개
문법 - Boolean
문법 - 조건문
활용 - 조건에 반응하는 앱 만들기
활용 - 파일 기능을 이용해 본문 구현
문법 - Python 공식 문서 보는 법
문법 - list
문법 - 컨테이너들
문법 - 반복문 for
활용 - 반복문을 이용해서 글목록 구현
활용 - 생성 구현 1 - form
활용 - 생성 구현 2 - 전송한 정보의 처리
활용 - 수정 구현
활용 - 삭제 구현
문법 - 함수
활용 - 함수를 글목록 기능을 정리 정돈하기
문법 - 모듈
활용 - 모듈로 함수 정리 정돈
활용 - 보안(XSS)
활용 - Pypi와 패키지 매니저
API
수업을 마치며
부록 - Sound of coding
#3-1. 웹서버 설치
▲ 웹서버 'Bitnami' 설치 후, python 파일 만들기
□ 웹서버 설치하기
>2018/10/17 - [생활코딩/WEB1 - HTML & INTERNET] - [8일차] 웹서버 운영하기
□ 아톰에서 'add project folder'
□ 'index.html'에 hello world 입력 → '웹주소 127.0.0.1' 에서 확인
#3-2. 파이선 설치/실행 (Windows)
▲ Python 설치하기
▲ Add Python 3.7 to PATH 선택하기
□ Add Python 3.7 to PATH 선택시, 'Terminal/Commandline'을 통해 어디서든 Python 실행가능
□ 위 상자체크 후, Customize installation 클릭
▲ 상자 다 체크되었는지 확인 후 'Next' 클릭
▲ 접근성을 높이기 위해 'install for all users' 클릭 후, 설치하기(Install)
▲ 설치완료
▲
▲ 폴더 디렉터리 위치 확인
▲ 커맨드(cmd)에서 입력한 화면
□ mkdir test (make directory test) : 'text'란 이름의 폴더 만들기
□ rmdir text (remove directory test) 'text'란 이름의 폴더 지우기
⇒ 위 방법을 커맨드 라인(Command line)을 통해 인터페이스(Interface)를 제어하므로 CLI 방식이라 부른다 (cf. 비주얼방식: 마우스로 오른쪽단추 ~ 폴더만들기)
□ python : python 실행하기
□ >>> (꺽쇠 3개) : 대화하듯이 상화작용 (interactive shell) (ex. 1+1 = 2)
□ >>> exit() : 파이선 종료
▲ 아톰에서 만든 코드를 커맨드(cmd)를 통해 실행하기
① 아톰에서 확장자명이 파이선(.py)인 파일 만들기
② 코드 입력 후 '복사'
③ 커맨드에 python 입력
④ python 실행 후 '붙여넣기'
⑤ '4'를 응답하였다.
▲ 커맨드에서 직접 디렉터리를 설정하면, 'python'을 입력하지 않고 파일(helloworld.py)을 불러오는 것만으로 코드 실행이 가능하다.
□ cd \디렉터리주소\ (*cd 입력후 띄어쓰기 必) ⇒ 해당 디렉터리 주소에 머물게 됨
□ cd = chage directory
□ python helloworld.py → 열어서 해당 파일 읽음
□ helloworld.py : '프로그램'에 해당되며, 해당 파일의 순서대로 명령이 실행된다.
▲ python을 붙이지 않더라도, 확장자명 (.py)로 코딩이 가능하다
#3.3 - CGI 설정
▲ 프로젝트 폴더 불러오기
▲ 'mod.cg'가 있는지 확인하기
□ mod.cg : 아파치와 파이선 연동에 필요한 코드
□ 주의 : mod.cg 앞에 샵(#) 없을 것
▲ '경로 요청' 코드
□ DocumentRoot : htdoc에서 찾아라
□ Directory : 웹서버가 어떻게 다룰것인지에 대한 설정
▲ 백업파일 만들기 (.bak)
▲ 디렉터리 태그 밑에 '파일태그 입력'
<Files "*.py">
options ExecCGI AddHandler cgi-script .py
</Files>
□ ExecCGI (=Execute) : CGI 방식으로 실행
□ 확장자 '(.py)'인 파일을 CGI로 실행한다
▲ Binami WAMP Stack '재시작(Restart)'
▲ 오류로그 확인 후 해당 디렉터리에서 '코드 지우기'
▲ 웹페이지 새로고침 후 다른 페이지로 이동하였다가 복귀
▲ 에러메시지 확인 후 해당내역 수정 → 웹페이지 새로고침
[에러원인] helloworld.py is not executable; ensure interpreted scripts have '#!' or "'!" first line
[해결방법] .py가 실행되지 않으므로, 해당 웹페이지 코드 첫 줄에 '#!'를 추가하여라
▲ 새로고침 후 새로운 에러코드 발견
[문제원인] malformed header from script 'helloworld.py' : Bad header: 4.0
[해결방법] malformed(=형식이 맞지 않는) → 헤더 형식 바꾸기
▲ python 웹페이지에서 '개발자콘솔'로 헤더확인 후 복사하기
▲ 아톰에 붙여넣기 후 코드 수정
print("content-type: text/html; charset-utf-8\n") print(b)
□ \n : 줄바꿈 약속
□ 위 약속 덕분에 b의 값을 도출하고 'print(b)' 줄바꿈을 한다.
▲ 커맨드에 python helloworld.py 입력 → 정답 도출 '4'
▲ 웹페이지를 리로드한 결과, 답이 제대로 도출됨을 알 수 있다.
'Develop > WEB2 - Python' 카테고리의 다른 글
[3일차] #6. 홈페이지를 CGI로 구현 (0) | 2018.12.17 |
---|---|
[2일차] #5. 문법 - 데이터 타입 - 문자열 (0) | 2018.12.14 |
[2일차] #4. 문법 - 데이터 타입 - 숫자 (0) | 2018.12.14 |
[1일차] #2. 수업예고 (0) | 2018.12.13 |
[1일차] #1. 수업소개 - 'Python'의 등장 (0) | 2018.12.13 |