Python 3+django 2.0+apache2+ubuntu 14 사이트 온라인 배치 방법
환경:ubuntu 14,django 2.0,apache 2.
1.먼저 필요 한 라 이브 러 리 패 키 지 를 설치 하고 ubuntu 에서 다음 명령 을 실행 합 니 다.루트 사용자 가 Ubuntu 에 로그 인하 거나 apt-get 전에 sudo 를 추가 하 는 것 을 권장 합 니 다.
아파 치 2 설치
apt-get update #
apt-get install apache2 # Apache2apt-get install libapache2-mod-wsgi-py3 # Apache2 Python , mod-wsgi
설치 한 아파 치 2 버 전 번호 확인
apachectl -v
Git 설치 및 설정(원 격 문서 라 이브 러 리 에서 원 격 창 고 를 로 컬 로 전송 하기 위 한 것 입 니 다.
apt-get install git
git config --global user.name 'yourname'
git config --global user.email 'youremail'
Python 을 설치 한 pip 구성 요소 관리자 와 가상 컴퓨터 환경 프로그램 virtualenv
apt-get install python3-pip
pip3 install virtualenv
2.원 격 Django 프로젝트 설정Linux 운영 체제 의 Apache 웹 서버 는 일반적으로 웹 페이지 를/var/www/html 에 두 기 때문에(Apache 2 를 설치 하면/var/www 디 렉 터 리 생 성)Django 프로젝트 를/var/www 아래 에 두 기도 합 니 다.먼저/var/www 에서 virtualenv 를 사용 하여 가상 환경 을 만 들 고 사용 한 다음 에 git clone 명령 으로 원 격 Django 프로젝트 를 로 컬 로 전송 합 니 다(여 기 는 제 창고 의 예https://github.com/weixuqin/myDjango.git.작업 은 다음 과 같 습 니 다.
cd /var/www # /var/www
virtualenv VENV # VENV
source VENV/bin/activate # VENV
git clone https://github.com/weixuqin/myDjango.git #
cd myDjango/mblog #
pip install -r requirements.txt # requirements.txt
다음은 다음 명령 을 사용 하여 Django 를 시작 하여 사이트 내용 이 완전 하 게 나타 나 는 지 확인 할 수 있 습 니 다.
python manage.py runserver 0:8000
3.settings.py 를 수정 하고 정적 파일 을 추가 하 는 등 설정본 격 적 으로 접속 한 사 이 트 는 python manage.py runserver 와 같은 방식 으로 사용 할 수 없습니다.웹 서버(예:Apache)를 통 해 원 격 브 라 우 저의 요청 을 Django 프로그램 에 전송 하고 실행 한 결 과 를 Apache 를 통 해 브 라 우 저 에 전송 해 야 합 니 다.
주로 두 개의 파일,setting.py 와 wgi.py 와 관련된다.setting.py 는 Django 사이트 의 관련 설정 을 담당 하고,wsgi.py 는 Apache 가 프로그램 코드 를 순조롭게 전달 하고 실행 결 과 를 되 돌려 줄 수 있 는 설정 파일 을 만 드 는 것 을 책임 집 니 다.
setting.py 에서 다음 과 같이 수정 합 니 다.
# SECURITY WARNING: keep the secret key used in production secret!
# , SECRET_KEYS /etc/secret_key.txt , SECRET_KEYS
with open('/etc/secret_key.txt') as f:
SECRET_KEY = f.read().strip()
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = False # debug , ,
ALLOWED_HOSTS = ['*'] # IP '*',
그리고 정적 파일 을 정상적으로 불 러 올 수 있 도록 setting.py 를 수정 합 니 다.
STATIC_URL = '/static/'
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static')
]
STATC_ROOT = '/var/www/staticfiles'
python manage.py collectstatic
모든 STATICFILESDIRS 의 모든 폴 더 에 있 는 파일 과 각 app 의 static 에 있 는 파일 을 STATIC 로 복사 합 니 다.ROOT 이 지정 한 폴 더 에 이 파일 들 을 함께 넣 는 것 은 apache 등 으로 배치 할 때 더욱 편리 하도록 하기 위해 서 입 니 다.Linux 는 파일 권한 에 민감 합 니 다.아파 치 2 가 정확하게 읽 을 수 있 도록 파일 권한 을 수정 해 야 합 니 다.
일반 디 렉 터 리 권한 은 755 로 설정 되 어 있 으 며,파일 권한 은 644 로 설정 되 어 있 습 니 다.
cd /var/www/myDjango/mblog
sudo chmod -R 644 zqxt
sudo find mblog -type d | xargs chmod 755
4.아파 치 의 파일 을 수정 하여 웹 사 이 트 를 접속 시 키 기웹 사이트 설정 파일 만 들 기
sudo vim /etc/apache2/sites-available/sitename.conf
여 기 는 제 프로필 을 예 로 들 면 실제 수요 에 따라 스스로 변경 할 수 있 습 니 다.
<VirtualHost *:80>
# wsgi.py
WSGIScriptAlias / /var/www/myDjango/mblog/mblog/wsgi.py
WSGIDaemonProcess mblog python-path=/var/www/myDjango/mblog:/var/www/VENV/lib/python3.4/site-packages
WSGIProcessGroup mblog
#
Alias /static/ /var/www/staticfiles/
<Directory /var/www/staticfiles>
Require all granted
</Directory>
# wsgi.py
<Directory /var/www/myDjango/mblog/mblog>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
디 렉 터 리 로 전환:/etc/apache 2/sites-available/실행:
sudo service apache2 reload
sudo a2dissite 000-default && sudo a2ensite sitename.conf
sudo service apache2 restart
이 어 서버 IP 주 소 를 입력 하면 성공 하면 사이트 에 정상 적 인 내용 이 표시 되 고 나중에 도 메 인 이름 을 서버 에 분석 하 는 등 접근 할 수 있 습 니 다.나의 것 은 다음 과 같다.
**PS:도 메 인 네 임 을 서버 에 분석 한 후에 사이트 에서 500 오 류 를 보 고 했 습 니 다.그러나 IP 주 소 를 통 해 방문 한 이 유 를 찾 아 보 니 도 메 인 네 임 을 서버 에 분석 한 것 입 니 다.서버 가 국내 에 있 으 면 등록 해 야 합 니 다.그렇지 않 으 면 방문 할 수 없습니다.그런데 자신 은 마침 텐 센트 클 라 우 드 의 국내 서버 입 니 다.오랫동안 찾 았 습 니 다.계속 잘못 신고 한 이유 가 뭔 지 알 게 되 었 다.
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
#2_Raspberry Pi 3B+에서 LINE에 일기 예보 알림도쿄에 와서 갑자기 비가 오는 경우가 많습니다. "아침 제대로 일기 예보를 체크해 두면..."라고 후회하는 것이 자주. LINE에 매일 아침 일기 예보를 보내 주시면 좋지 않아? 라고 생각하고 만들어 보기로 했습니다...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.