依赖包

[root@web01 ~]# yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc gcc-c++  openssl-devel zlib zlib-devel -y

1.  安装Python3

[root@web01 ~]# wget https://www.python.org/ftp/python/3.7.2/Python-3.7.2.tgz
[root@web01 ~]# tar xf Python-3.6.2.tgz    # 解压python安装包
[root@web01 ~]# cd Python-3.6.2/    # 切换到解压的文件夹下面 [root@web01 Python-3.6.2]# ./configure --prefix=/usr/local/    # 进行配置
[root@web01 Python-3.6.2]# make && make install    #将解压后的文件转为二进制并且安装 [root@web01 Python-3.6.2]# ./configure && make && make install    # 将上面的两步合为写一步

2.  安装Django框架和uwsgi

安装Django项目中所用到的包

vim  re.txt

下面的包信息写入到re.txt文件中

asn1crypto==0.24.0
beautifulsoup4==4.6.3
bs4==0.0.1
certifi==2018.4.16
cffi==1.11.5
chardet==3.0.4
Click==7.0
cryptography==2.3.1
Django==1.11.9
Flask==1.0.2
Flask-Cors==3.0.6
gevent==1.3.6
greenlet==0.4.15
idna==2.7
ItsDangerous==1.1.0
Jinja2==2.10
lxml==4.2.6
MarkupSafe==1.0
numpy==1.15.3
Pillow==5.3.0
pycparser==2.18
PyMySQL==0.9.2
pytz==2018.7
requests==2.19.1
selenium==3.141.0
six==1.11.0
urllib3==1.23
virtualenv==16.1.0
Werkzeug==0.14.1
wordcloud==1.5.0 pip3 install -i https://pypi.doubanio.com/simple/ -r re.txt
pip3 install -i https://pypi.doubanio.com/simple/ uwsgi

3.  测试uwsgi是否正常,新建test.py文件,内容如下:

安装uwsgi
pip3 install uwsgi
[root@web01 ~]# vim test.py
测试要切换到普通用户,
添加用户 useradd test
切换用户 su - test 在test.py文件中写入
def application(env, start_response):
start_response('200 OK', [('Content-Type','text/html')])
return [b"Hello Django"]

接下来在终端运行:

uwsgi --http :8001 --wsgi-file test.py &
加 & 表示在后台运行 如果要关闭uwsgi:
用kill
ps -ef |grep uswgi
pkill uwsgi

4.  测试Django是否正常,运行:

run
[root@web01 ~]# django-admin.py startproject demosite
[root@web01 ~]# cd demosite
[root@web01 demosite]# python3 manage.py runserver 0.0.0.0:8002

在浏览器内输入:http://127.0.0.1:8002,检查django是否运行正常。

如果正常则在浏览器显示: Hello Django

5.  配置uwsgi

[root@web01 demosite]# vim /root/demosite/uwsgi.ini

# 在uwsgi.ini中写入下面的配置信息
# 将配置文件放在跟项目文件同级
-------------------------------------------
[uwsgi]
socket = 127.0.0.1:9999
master = true
workers = 2
max-requests = 1000
buffer-size = 30000
pidfile = /run/uwsgi.pid
daemonize = /var/log/uwsgi.log
-------------------------------------------

执行:
# 后台运行uwsgi
uwsgi --ini /root/demosite/uwsgi.ini &

6.  配置Nginx

切换到项目目录
一般将uwsgi.ini放在项目的目录下 [root@web01 demosite]# vim /etc/nginx/conf.d/py.conf
在py.conf中写入下面的配置信息:
-----------------------------------------------------
server {
listen 80;
server_name 10.0.0.100;
client_max_body_size 100M; location / {
index index.html;
include uwsgi_params;
uwsgi_pass 127.0.0.1:9999; #nginx转发的端口号
uwsgi_param UWSGI_SCRIPT demosite.wsgi; #代码转发到demosite目录下的wsgi
uwsgi_param UWSGI_CHDIR /root/demosite; #项目的目录
}
}
-----------------------------------------------------

systemctl start nginx
  systemctl enable nginx

 
重启nginx:
systemrtl restart nginx

最新文章

  1. CSS之水平垂直居中
  2. Mybatis在insert操作时返回主键
  3. Metrics-Java版的指标度量工具之二
  4. sql 分页的两种写法
  5. html5有哪些新特性、移除了那些元素?如何处理HTML5新标签的浏览器兼容问题?如何区分 HTML 和 HTML5?
  6. RTP-RTCP-RTSP协议的区别与联系
  7. Linux UGO
  8. 使用mysql 的docker
  9. css之clear属性
  10. 【BZOJ】【3052】【WC2013】糖果公园
  11. rpm 命令参数使用详解
  12. 159. Longest Substring with At Most Two Distinct Characters
  13. CentOS 5: Make Command not Found
  14. MySQL索引及Explain及常见优化
  15. C#总结项目《影院售票系统》编写总结三
  16. JAVA项目复习的一些小细节
  17. parted分区及挂载实战操作大全
  18. 浅析开源数据库MySQL架构
  19. Python笔记 #20# SOM
  20. password_hash加密

热门文章

  1. PHP——投票
  2. 实例具体解释Django的 select_related 和 prefetch_related 函数对 QuerySet 查询的优化(二)
  3. 29个酷炫的Firefox配置参数
  4. Easyui Datagrid相同连续列合Demo之三
  5. ubuntu被delete的文件位置
  6. HttpModule的简单示例
  7. YII2与Thinkphp整合阿里云OSS
  8. 浅谈Spring(一)
  9. Mac终端运行java程序
  10. react-native新导航组件react-navigation详解