수업소개
이 수업에서는 온라인을 통해서 실습을 진행할 수 있는 codeanywhere.com 의 사용법과 Python, Apache를 연동해서 Python 웹애플리케이션을 구동하는 방법을 살펴봅니다.
웹서버 준비
Python 설치와 실행방법
Apache와 Python을 CGI로 연동하는 방법
nano 에디터로 Apache 웹서버가 동작하는 방법을 변경하기 위해서 설정 파일을 편집합니다.
sudo nano /etc/apache2/sites-enabled/000-default.conf
Document root(웹서버가 요청한 파일을 찾는 최상위 디렉토리)에 있는 파일 중 확장자가 py인 파일은 Python으로서 실행 되도록 합니다. 추가한 내용은 4~7행입니다.
<VirtualHost *:80 *:3000> ServerAdmin webmaster@localhost DocumentRoot /home/cabox/workspace <Directory /home/cabox/workspace> AddHandler cgi-script .py Options ExecCGI </Directory> ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost>
cgi가 동작하도록 cgi 기능을 켭니다.
sudo a2enmod cgi
웹서버를 재시작합니다.
sudo service apache2 restart
python script를 작성합니다.
helloworld.py
#!/usr/bin/python3 print("content-type:text/html; charset=UTF-8\n") print(1+1)
python 파일이 웹서버에 의해서 실행되도록 실행권한을 허용합니다.
sudo chmod a+x helloworld.py
접속합니다.
필자의 경우는 아래 주소였습니다. 자신의 주소에 접속하시면 됩니다.
http://web2-python-egoing690448.codeanyapp.com/helloworld.py
오류가 발생하면 오류 메시지를 확인해봅니다.
sudo tail -f /var/log/apache2/error.log