一、操作环境

操作系统:CentOS 7.4 64位

1.下载python

cd /usr/local
wget https://www.python.org/ftp/python/3.6.8/Python-3.6.8.tgz

yum install gcc-c++ gcc make cmake zlib-devel bzip2-devel openssl-devel ncurse-devel libffi-devel -y #安装编译工具

2.解压、配置、编译安装

tar xvf Python-3.6.0a3.tar.xz
mv Python-3.6.8 python-3.6
cd /usr/local/python-3.6
./configure
make && make install
python3 -V

二:安装并创建虚拟环境

建议使用这个命令安装virtualenv --python=/usr/bin/python3 vnev(虚拟环境名称)

以前用的pip3 install virtualenv命令安装 会出现这个错误ImportError: No module named ‘encodings’

创建一个文件夹,在里面创建运行环境

virtualenv [虚拟环境名称]
virtualenv Py_django_venv #我创建的虚拟环境名称是venv
激活虚拟环境

cd Py_django_venv
source ./bin/activate

虚拟环境

退出虚拟环境

deactivate

三:在虚拟环境中安装项目所需应用

1:安装django

pip3 install django==2.0.2

2:安装nginx

http://nginx.org/en/download.html  在这里获取最新版的下载链接

wget http://nginx.org/download/nginx-1.17.6.tar.gz # 下载文件到服务器
tar -zxf nginx-1.17.6.tar.gz # 解压缩文件

cd nginx-1.17.6/

1、 配置。通常将软件安装在/usr/local/目录下。
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_realip_module

./configure 

2、 编译

make

3、 安装

make install

4,停止

service nginx stop

5,启动

sudo service nginx start

顺序不能错。

成功了

sudo ./configure # 以 root 身份运行
sudo make && make install # 以 root 身份运行


补充一下nginx的相关命令

复制代码
首先要进入nginx启动目录下面  默认目录/usr/local/nginx/sbin
./nginx #启动
./nginx -s stop # 快速停止
./nginx -s quit # 优雅停止
./nginx -s reload # 重新加载配置文件
./nginx -s reopen # 重启日志文件,备份日志文件时常用
./nginx -t # 测试 Nginx 配置文件
./nginx -v # 查看 Nginx 版本
./nginx -V # 查看 Nginx 版本、编译版本和编译参数

也可以通过命令sudo find / -name nginx 查找nginx

所在的路径
我是在make nginx的时候出的问题只有一行提示:

make[1]: Leaving directory `/usr/local/nginx-1.12.1;我个人认为这句话的意思是,安装后,离开了这个文件;

因为我所有的操作步骤都是按照上面来的,我的解决办法也非常的简单:
如果你走到make这一步的时候只出现了一行“make[1]: Leaving directory `/usr/local/nginx-1.12.1;”提示,不用管它,继续走make install ;

然后:

1、我只需要去看/usr/local下面是否有nginx文件夹?

2、如果已经有nginx文件夹?

3、我们再去看nginx是否可以正常启动?

4、如果nginx启动也可以成功,我们再去看下网站是否可以访问,是否会出现“Welcome to nginx!”?

5、如果上面都成功了,说明你的nginx已经ok!

提醒:此解决方法只针对报错一行,如果你安装nginx走到make这一步的时候,报错了很多行的make解决办法就不一样了,比如说:有时候安装nginx需要指定 pcre 的源码目录;

注意:关于出一个提示make[1]: Leaving directory `/usr/local/nginx-1.12.1我猜测应该是服务器环境的原因?毕竟我的朋友用的是centos5.1版本,而且还是32位的;现在服务器都是64位,centos版本也没有这么低的吧!



四:安装uWSGI

1:在非虚拟环境中安装uWSGI
pip3 install uwsgi

通过sudo find / -name uwsgi命令找到uwsgi的位置

所在的路径
然后创建软连接

ln -s /usr/local/bin/python3/bin/uwsgi /usr/bin/uwsgi

测试uwsgi,首先创建一个test,py的文件,并写入内容

vim test.py
def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    return [b"Hello World"] # python3
2:配置uWSGI

在项目中新建文件uwsgi.ini,编写如下配置

[uwsgi]

  1. socket=外网ip:端口(使用nginx连接时,使用socket)
  2. http=外网ip:端口(直接做web服务器,使用http)
  3. chdir=项目根目录
  4. wsgi-file=项目中wsgi.py文件的目录,相对于项目根目录
  5. processes=4
  6. threads=2
  7. master=True
  8. pidfile=uwsgi.pid
  9. daemonize=uswgi.log

● 启动:uwsgi --ini uwsgi.ini
● 停止:uwsgi --stop uwsgi.pid
● 重启:uwsgi --reload uwsgi.pid(官网上这个命令重启,但我试了根本没用)
● 使用http协议查看网站运行情况,运行正常,但是静态文件无法加载

3:检查uwsgi版本
uwsgi --version       

1、找到nginx.conf 一般在/usr/local/nginx/conf目录下

Logo

CSDN联合极客时间,共同打造面向开发者的精品内容学习社区,助力成长!

更多推荐