이전 글에서 kt ucloud에서 virtualenv위에 django와 nginx를 설치하였었다. (http://abipictures.tistory.com/918)
그리고, django에서 프로젝트를 생성했을때 정상적으로 동작되는 것을 확인도 하였다.
그렇게 django app을 개발하면서 db를 사용하게 될텐데, db서버도 kt ucloud에 신청하였다.
그리고, django의 settings.py를 아래처럼 수정하였다.
DATABASES = { 'default': { 'ENGINE':'django.db.backends.mysql', 'NAME':'(신청한 db명)', 'USER':'DB이용자 ID', 'PASSWORD':'DB이용자 암호', 'HOST':'KT UCLOUD의 DB서버 Private IP 주소', 'PORT':'DB서버의 포트번호(Mysql서버는 3306)', } } |
위의 설정대로 다 작성을 하고 난뒤에 서버를 refresh한뒤에 접속을 해보면...
안그럴수도 있겠지만,
"502 Bat Gateway"
에러가 난다.
이럴때 침착하게 log에 뭐라고 적혀있는지 봐야한다. (로그는 이럴때 이용하는 것.)
uwsgi.log 파일의 맨 하단을 보니, 다음과 같은 에러로그가 남겨져 있다.
...(생략).. django.core.exceptions.ImproporyConfigured: Error loading MySQLdb module: No module named MySQLdb ...(생략).. |
$ source /var/www/example.com/venv/bin/activate $ apt-get install libmysqlclient-dev $ apt-get install python2.7-dev $ pip install mysql-python |
즉 mysql-python 모듈을 설치하면 된다.
'Web' 카테고리의 다른 글
공개 소프트웨어 라이센스 종류과 제약사항. (0) | 2013.10.01 |
---|---|
python으로 ucloud storage에 파일 업로드 방법 (0) | 2013.09.15 |
django에서 server error 500이 뜰때는.. (0) | 2013.09.06 |
ubuntu 12.04 + nginx 1.4.2 + django 1.5.2 + uwsgi 1.4.10 설정 방법 (2) | 2013.09.05 |
make install 대신에 checkinstall 을 사용할 것. (0) | 2013.09.05 |