본문 바로가기
컴퓨터 활용/노년에 즐기는 코딩

Apache + Django 연동 핵심 정리 노트

by easyfly 2025. 6. 17.
반응형

✅ Apache + Django 연동 핵심 정리 노트

1. Django 프로젝트 준비

  • 프로젝트 디렉터리 예시: /home/ubuntu/madang
  • 구조:


2. WSGI 방식 연결

  • Apache는 Django의 wsgi.py를 통해 앱을 실행함

3. Apache 설정 파일 생성

  • 위치: /etc/apache2/sites-available/simadang.conf
<VirtualHost *:80>
    ServerAdmin webmaster@localhost
    DocumentRoot /home/ubuntu/madang

    Alias /static /home/ubuntu/madang/static
    <Directory /home/ubuntu/madang/static>
        Require all granted
    </Directory>

    <Directory /home/ubuntu/madang/simadang>
        <Files wsgi.py>
            Require all granted
        </Files>
    </Directory>

    WSGIDaemonProcess simadang python-path=/home/ubuntu/madang python-home=/home/ubuntu/madang/venv
    WSGIProcessGroup simadang
    WSGIScriptAlias / /home/ubuntu/madang/simadang/wsgi.py

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

4. 필수 Apache 명령어

sudo a2ensite simadang.conf      # 사이트 활성화
sudo a2dissite 000-default.conf  # 기본사이트 비활성화
sudo a2enmod wsgi                # mod_wsgi 활성화
sudo systemctl restart apache2   # 아파치 재시작

5. 정적 파일 처리

python manage.py collectstatic
  • STATIC_ROOT 설정 필요:
  • `os` 라이브러리 임포트 필요
STATIC_ROOT = os.path.join(BASE_DIR, 'static')

6. 권한 설정

sudo chown -R :www-data /home/ubuntu/madang
sudo chmod -R 755 /home/ubuntu/madang

7. 브라우저 접속 확인

http://서버_IP/


마무리 조언

장고 설정을 먼저 합니다. 장고 기본 포트는 8000번인데, 이곳에서 성공한 연후에 아파치 웹서버와의 연동을 시도합니다. 시도하는 과정에서 아파치 라이브러리 설치는 꼭 진행해야 합니다. '/etc/apache2/sites-available' 아래에 해당 환경 파일을 만듭니다. 제 경우는 'simadang.conf'파일을 만들었습니다.

반응형

댓글