Data+

#6. Django와 Apache2 연동하기 in 라즈베리파이3

by Qerogram

서론


이 부분에 있어선 로그 관리 때문에 진행을 한번 해봤다.

실제로, Django에서는 python runserver 식의 명령어를 권하진 않는다고 한다. 이유는 테스트 용도이며 앞에 서술한 로그관리에 취약하는 점에 있다.

자료를 여러군데를 조사했지만 전부다 yum을 쓰거나 여러모로 번거롭게 되어있어 두번 고생하지 않기 위해 시행착오 끝에 방법을 작성하게 되었다.

Django, apache2가 깔려있다는 전제하에 쓰도록 하겠다.

진행과정


1. 우선 wsgi를 설치한다.
1
sudo apt-get install libapache2-mod-wsgi
cs

2. Django의 프로젝트를 만든다.(tmp폴더에 TEST라는 이름으로 제작해보겠다.)
1
sudo django-admin startproject TEST
cs

3. /etc/apache2/sites-available/ 경로에 파일을 하나 만든다. 

Test.conf라고 만들어 보겠다. WSGIDaemonProcess, WSGIProcessGroup 부분은 ServerName과 같게 지정한다. 파이썬 패키지가 깔려있는 디렉터리로 경로 지정을 해야하고. ServerAlias는 자기 도메인을 기입한다. ServerName 또한 자신의 도메인을 입력하자.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<VirtualHost *:80>
        ServerName Qerogram
        ServerAlias www.qerogram.kro.kr
        <Directory /temp/TEST/TEST>
                Require all granted
         <Files wsgi.py>
                Require all granted
         </Files>
        </Directory>
 
        WSGIDaemonProcess Qerogram python-path=/opt/eff.org/certbot/venv/lib/python2.7/site-packages
        WSGIProcessGroup Qerogram
        WSGIScriptAlias / /tmp/TEST/TEST/wsgi.py
</VirtualHost>
cs


4. /tmp/TEST/TEST/wsgi.py를 만들고 아래의 내용을 기입.
1
2
3
4
5
6
7
8
9
import os,sys
path = os.path.abspath(__file__+'/../..')
if path not in sys.path:
    sys.path.append(path)
os.environ['DJANGO_SETTINGS_MODULE'= 'TEST.settings'
import django.core.handlers.wsgi
#application = django.core.handlers.wsgi.WSGIHandler()
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
cs


5. 아파치에 서비스 등록 후 재구동

1
2
sudo a2ensite Test
sudo service apache2 restart
cs

이러면 아마 될건데, 500에러와 404에러와 여러모로 개고생했다 ...


# REF

http://bluese05.tistory.com/40

http://egloos.zum.com/killins/v/3013358

http://idlecomputer.tistory.com/7

'코딩 > Python' 카테고리의 다른 글

#9. Tray 프로그램  (0) 2018.06.26
#7. Django에 SSL 달아주기  (0) 2018.02.13
#5. 파일전용 hash 뷰어를 만들어보자  (0) 2018.02.13
Django에서 robots.txt 처리하기  (0) 2018.01.19
#4. 티스토리 이미지 크롤링  (0) 2017.07.28

블로그의 정보

Data+

Qerogram

활동하기