Covenant






 아마존AWS를 이용하여 Ubuntu에서 Django와 Apache2를 연결하겠습니다. Apache2와 Djando를 연결하는 이유는 django에서 python manage.py runserver 를 해서 접속할 수 있지만 이는 테스트 서버입니다. 따라서 여러 사림이 들어올 경우 django는 안정성을 보장할 수 없습니다. 따라서 apache2와 연결하는 것입니다. 


1. 필요한 팩키지 다운로드

apt-get update

apt-get upgrade

apt-get install apache2

pip3 install Django==1.11.3

apt-get install libapache2-mod-wsgi-py3

apt install python3-pip

pip3 install --upgrade pip



2. settings.py 설정

settings.py에서 ALLOWED_HOSTS = ['*']라고 입력합니다. (경로 :  프로젝트명/mysite/settings.py)



3. apache2.conf설정

/etc/apache2/ 에 있는 apache2.conf의 맨 밑에 다음과 같이 추가합니다.

WSGIScriptAlias / /home/ubuntu/Check/mysite/wsgi.py

WSGIDaemonProcess mysite python-path=/home/ubuntu/Check

WSGIProcessGroup mysite

 

<Directory /home/ubuntu/Check/mysite>

<Files wsgi.py>

Require all granted

</Files>

</Directory>

 

Alias /static/ /home/ubuntu/Check/www_static/

<Directory /home/ubuntu/Check/www_static>

Require all granted

</Directory>

형광펜  : 이 부분은 본인에 맞는 경로를 설정하면 됩니다.

Check는 프로젝트 파일이 있는 폴더

mysite는 settings.py, wsgi.py 등등의 파일이 있는 폴더입니다.



4. 디비 권한 변경

cd /home/ubuntu/Check/

mkdir db

mv db.sqlite3 db/

chmod 777 db/

chmod 666 db/db.sqlite3



5. static 파일 설정

mysite/setting.py에서 STATIC_ROOT = os.path.join(BASE_DIR, 'www_static') 입력

python3 manage.py collectstatic



6. 마지막 설정

(1) DB마이그레이션 

python3 manage.py makemigrations

python3 manage.py migration


(2) 모든 설정을 마치고 아파치 재시작 명령

service apache2 reload