Djangoプロジェクトのデプロイ:Linux(centos7)+ Nginx + Uwsgi + Python3 + MySQL + RedisメモはLiuJianping
先生からのものです。自習と自己使用、侵害の削除
在windows系统中开发的django项目部署到centos系统中 并且可以在浏览器中可以访问项目
详细步骤(下面步骤都是ROOT权限执行):
1) 先安装python
2) 安装pip
3) 安装django
4) 把项目从windows系统拷贝到centos系统中django框架所在的项目的路径 通过命令行
5) 先通过django自带的web服务器运行项目 python manage.py runserver 0.0.0.0:8000 X
6) 安装uwsgi web服务器
7) 安装 web服务器 nginx (小巧 性能特别高 10000)
8) 通过nginx来启动django项目
Django + uWsgi + Nginxの原理の予備的理解
Nginx 是一个反向代理服务器,负责静态资源处理、动态请求转发以及结果的回复。
uWSGI 是一个Web服务器,负责接收 Nginx 请求,转发并处理后发给 Django 以及
接收 Django 返回信息转发给 Nginx。uWSGI是 实现了uwsgi协议,WSGI规范和HTTP协议的 一个C语言实现的软件。
Django 是一个Web应用框架,在收到请求后进行逻辑和数据处理,然后响应结果给 uWSGI 服务器。
通信关系:
1.システムソフトウェアパッケージを更新し、ソフトウェア管理パッケージと考えられる依存関係をインストールします
yum update -y
yum -y groupinstall "Development tools"
yum -y install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel
2. Pythonをインストールします(保存場所:例:/ home / soft)
https://www.python.org/ftp/python/ Webサイトにログインしてすべてのバージョンを表示し、ダウンロードする適切なバージョンを選択します
wget https://www.python.org/ftp/python/3.5.4/Python-3.5.4.tgz
tar -zxvf Python-3.5.4.tgz
cd Python-3.5.4
#编译安装
./configure --prefix=/usr/local/python3
make && make install
make && make install後の結果:インストール
後のpyディレクトリのファイルコンテンツを表示します
#创建软连接
ln -s /usr/local/python3/bin/python3.5 /usr/bin/python3
ln -s /usr/local/python3/bin/pip3.5 /usr/bin/pip3
#查看Python3和pip3安装情况
python3 --version
pip3 --version
LinuxソフトリンクはWindowsのショートカットに相当し、Windowsの環境変数を参照することもできます。Python3を直接使用して命令を操作できます。それ以外の場合は、コンテンツの大きな文字列/usr/local/python3/bin/python3.5を入力する必要があります。
現時点では、python3-versionは/usr/local/python3/bin/python3.5--versionと同等です。
3つ目は、virtualenvをインストールして、各プロジェクトで使用される拡張パッケージを保存することです。
pip3 install virtualenv
#建立软链接
ln -s /usr/local/python3/bin/virtualenv /usr/bin/virtualenv
#安装成功在根目录下建立两个文件夹,主要用于存放env和网站文件的。
mkdir -p /data/env
mkdir -p /data/wwwroot
4. / data / env /に切り替えて、指定したバージョンの仮想環境を作成します。
cd /data/env
virtualenv --python=/usr/bin/python3 pyweb
#然后进入/data/env/pyweb/bin ,启动虚拟环境:
cd /data/env/pyweb/bin
source activate
#マークの位置に注意してください。(pyweb)が表示され、仮想環境に正常に入力されたことを示します。
5、仮想環境にpython3を使用してdjangoとuwsgiをインストールします
# (如果用于生产的话,则需要指定安装和你项目相同的版本)
pip3 install django
#切换到网站目录/data/wwwroot,把windows系统中的Django项目拷贝到linux系统的存放项目的路径中(可用rz命令来拷贝 )
cd /data/wwwroot
#上传py项目的zip包,然后解压
現時点では、pyプロジェクトのパスは/ data / wwwroot / cmsで
あり、manager.pyをアップロードする必要があります。
6、djangoに付属のWebサーバーを介してプロジェクトを実行します
エラー:
上記のエラーが発生しました。考えられる理由は、djangoが現在インストールされていないことです。再操作は
python3manage.py runserver 0.0.0.0:8000にすることができます
この時点で、別のエラーが報告され、pymysqlのインストールを促します
この時点でも、python3 manage.py runserver0.0.0.0:8000です。
(base.pyを変更するための)
エラーと別のエラーが再び発生します:
修復リファレンス:https:
//blog.csdn.net/weixin_45476498/article/details/100098297コメントbase.pyの内容を変更した後、python3 manage.py runserver0.0.0.0:8000を再度実行します。mysqlがまだインストールされていないため、まだエラーがあります。まず、パブリックネットワークのmysqlをポイントし、プロジェクトを最初に実行します。
settings.pyでデータベースのホストを変更します。これは、パブリックネットワークアドレス47.100.xxx.xxxluzancmsを指します
settings.pyのallowed_hostsを変更します
ファイアウォールで許可されているポートを追加します
https://blog.csdn.net/weixin_34332905/article/details/92673905
#防火墙端口、开启的命令
firewall-cmd --list-ports
一連のエラーを処理した後、再実行してください
192.168.1.186:8000/admin/loginにアクセスします。この時点で、Django自身のWebサーバーはpyプロジェクトを正常に実行できます。
手順の概要:
启动虚拟环境:source activate
8000端口一定要开启
版本的问题注释一些代码
进入项目的根目录python3 manage.py runserver o.o.o.o:8000
この展開メモプロセスでは、エラーレポートとその処理方法も記録され、指定されたerrorキーワードを使用したオンライン処理方法で問題が解決されます。
終わり