DB 구조에 따라 최대한 필드 타입을 타이트하게 지정해주는 것이 입력값 오류를 막을 수 있음.
GET
POST
PUT
PATCH
Django 프로젝트 진행 시 개발 환경과 실제 운영환경에 대해서 분리 할 필요가 있습니다.
[ 개발 환경 ]
python manage.py runserver --settings=ProjectName.settings.development # 개발(디버그)용 python manage.py makemigrations --settings ProjectName.settings.development python manage.py migrate --settings=ProjectName.settings.development
- DJANGO_SETTINGS_MODULE 환경 변수를 원하는 환경으로 설정하면 --settings 옵션 없이도 이용 가능
export DJANGO_SETTINGS_MODULE=ProjectName.settings.development // 개발 환경 변수 설정
[ 운영 환경 ]
python manage.py runserver --settings=ProjectName.settings.production # 배포(서비스)용 python manage.py makemigrations --settings ProjectName.settings.production python manage.py migrate --settings=ProjectName.settings.production
- DJANGO_SETTINGS_MODULE 환경 변수를 원하는 환경으로 설정하면 --settings 옵션 없이도 이용 가능
export DJANGO_SETTINGS_MODULE=ProjectName.settings.development // 개발 환경 변수 설정
sudo systemctl start gunicorn.service
sudo systemctl enable gunicorn.service
sudo systemctl status gunicorn.service
sudo systemctl stop gunicorn.service
sudo systemctl start gunicorn.service
외부에서 port 접근 허용하도록 설정
# 방화벽 설정 확인
sudo iptables -nL
# TCP 트래픽 허용 규칙
sudo iptables -I INPUT 1 -p tcp --dport 8000 -j ACCEPT
# 전송 프로토콜을 UDP로 지정
sudo iptables -I INPUT 1 -p udp --dport 8000 -j ACCEPT