setenforce 0
systemctl stop firewalld
yum install -y httpd-devel python39 python39-devel mysql-devel
배포하기위해 설치한 프로그램들
파이썬 버전은 맞춰주는게 좋다.
pip3 install virtualenv
파이썬에 있던 가상환경의 경우 윈도우 기반으로 설치가 되어있기 때문에 우린 리눅스에 맞는 가상환경의 프로그램들을 설치할건데 어떤것들이 설치되어있는지 확인하기 위해서 request.txt 파일로 엮어놨다.
pip freeze > requirements.txt
파이참 개발환경에서 설치되어 있던 정보들을 한번에 설치하기 편하도록 목록을 묶어준것이라고 생각하자
이제 프로젝트를 원하는 방법으로 옮길 수 있는데 나는 파일 질라를 사용하였다. 파일 주고 받기
virtualenv venv
source [프로젝트폴더]/venv/bin/activate
deactivate
는 가상환경 비활성화 이다. pip install -r requirements.txt
WSGIPythonHome "/django/venv"
# 위에 두 줄은 mod_wsgi-express module-config 입력 후 출력 결과 붙여넣기 한 것
WSGIScriptAlias / "/[Project 폴더]/[Project 안의 설정 폴더]/wsgi.py"
WSGIPythonPath "/[Project 폴더]"
<Directory "/[Project 폴더]/[Project 안의 설정 폴더]">
<Files wsgi.py>
Require all granted
</Files>
</Directory>
Alias /static/ /[Project 폴더]/static/
<Directory /[Project 폴더]/static/>
Require all granted
</Directory>
Alias /media/ /[Project 폴더]/media/
<Directory /[Project 폴더]/media/>
Require all granted
</Directory>
vi /[프로젝트 폴더]/config/settings.py
를 위처럼 수정해줘야한다. systemctl restart httpd
마무리로 재실행해 준다.
크롬에서 실행하면 메인 화면이 뜨는 것을 확인할 수 있다.
여기서 추가적으로 우리는 database를 연동시켜줘야 한다.
window에서 만들었던 곳 말고 새롭게 연동 시켜줘야 한다.
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'DB이름',
'USER': 'DB접속ID',
'PASSWORD': 'DB접속PW',
'HOST': 'DB서버 IP주소',
'PORT': 'DB서버 포트번호',
'OPTIONS': {
'init_command': 'SET sql_mode="STRICT_TRANS_TABLES"'
}
}
}