1. 모듈 설치
sudo apt install apache2
sudo apt install libapache2-mod-wsgi-py3
2. 아파치 포트 추가
sudo vi /etc/apache2/ports.conf
저는 기존 80포트외에, 9999포트를 따로 추가하여 진행했습니다.
Listen 80
Listen 9999
3. 000-default.conf 환경설정
/etc/apache2/sites-enabled/000-default.conf 환경설정을 통해 쟝고와 연동
<VirtualHost *:9999>
ServerName 도메인이름
DocumentRoot /var/www/html
<Directory /home/djnago/backend/프로젝트이름/프로젝트이름>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
# admin페이지 css를 불러오기 위해 아래 경로 추가해줘야함
<Directory /home/django/venv/lib/python3.6/site-packages/django/contrib/admin/static>
Require all granted
</Directory>
WSGIDaemonProcess 도메인이름 python-path=/home/django/venv/lib/python3.6/site-packages
WSGIProcessGroup 도메인이름
WSGIScriptAlias / /home/django/backend/프로젝트이름/프로젝트이름/wsgi.py process-group=도메인이름
# admin페이지 css를 불러오기 위해 아래 경로 추가해줘야함
Alias /static /home/django/frontend/build/static
</VirtualHost>
※ 위는 필자의 경로이므로 자신이 설치한 장고와 가상환경 경로에 맞춰 진행햐줘야한다
1) 자신의 프로젝트내의 wsgi.py의 위치
<Directory /home/djnago/backend/프로젝트이름/프로젝트이름>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
2) 장고 프로젝트내의 admin페이지의 위치
<Directory /home/django/venv/lib/python3.6/site-packages/django/contrib/admin/static>
Require all granted
</Directory>
Alias /static /home/django/frontend/build/static
※ 해당 옵션을 넣지 않으면 사용자가 요청할 때 아파치 서버내의 CSS, JS를 못 반환한다.
3) 추가 사항
WSGIDaemonProcess - 위에서부터 가상환경내의 파이썬 위치
WSGIProcessGroup - 정한 도메인 이름
WSGIScriptAlias - 프로젝트내의 wsgi.py의 위치
4. 프로젝트/wsgi.py 수정
"""
WSGI config for mysite project.
It exposes the WSGI callable as a module-level variable named ``application``.
For more information on this file, see
https://docs.djangoproject.com/en/1.11/howto/deployment/wsgi/
"""
import os,sys
path = os.path.abspath(__file__+'/../..')
if path not in sys.path:
sys.path.append(path)
from django.core.wsgi import get_wsgi_application
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
application = get_wsgi_application()
5. 로컬 도메인을 위한 Host 생성
sudo nano /etc/hosts
127.0.0.1 도메인이름
6. 아파치 재시작
sudo service apache2 restart
'서버 > Django' 카테고리의 다른 글
/static 404 에러(css, js오류) | 아파치 장고 static 파일 모으기 (장고, 아파치)- [Linux] (0) | 2021.09.15 |
---|---|
React 리액트 빈화면 출력 시 해결방법 (장고, 아파치)- [Linux] (0) | 2021.09.14 |
Django장고 개발 환경 우분투18.04 구축 가이드 - [Linux] (0) | 2021.09.14 |