参考
http://www.runoob.com/django/django-nginx-uwsgi.html
####### 20181029
cd ~
wget http://python.org/ftp/python/2.7.5/Python-2.7.5.tar.bz2
tar xvf Python-2.7.5.tar.bz2
cd Python-2.7.5
./configure --prefix=/usr/local
make && make altinstall
4,更改系统默认版本
mv /usr/bin/python /usr/bin/python.bak
ln -s /usr/local/bin/python2.7 /usr/bin/python
在完成了上面4步之后,如果有使用yum的话会发现出错,这是因为yum 依赖2.4.3而现在默认的 Python 版本是 2.7.3 。
vim /usr/bin/yum
将首行显示的 !#/usr/bin/python 修改为 !#/usr/bin/python2.4
### pip
cd ~
wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
[root@pythontest ~]# python get-pip.py
Collecting pip
/tmp/tmpRRrzFV/pip.zip/pip/_vendor/urllib3/util/ssl_.py:369: SNIMissingWarning: An HTTPS request has been made, but the SNI (Server Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
/tmp/tmpRRrzFV/pip.zip/pip/_vendor/urllib3/util/ssl_.py:160: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
/tmp/tmpRRrzFV/pip.zip/pip/_vendor/urllib3/util/ssl_.py:160: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
Downloading https://files.pythonhosted.org/packages/c2/d7/90f34cb0d83a6c5631cf71dfe64cc1054598c843a92b400e55675cc2ac37/pip-18.1-py2.py3-none-any.whl (1.3MB)
51% |████████████████▍ | 675kB 42kB/s eta 0:00:1 51% |████████████████▋ | 686kB 42kB/s eta 0:00:1 52% |████████████████▉ | 696kB 41kB/s eta 0:00:1 53% |█████████████████ | 706kB 34kB/s eta 0:00:1 54% |█████████████████▎ | 716kB 42kB/s eta 0:00: 54% |█████████████████▋ | 727kB 36kB/s eta 0:00: 55% |█████████████████▉ | 737kB 36kB/s eta 0:00: 56% |██████████████████ | 747kB 35kB/s eta 0:00: 57% |██████████████████▎ | 757kB 37kB/s eta 0:00 58% |██████████████████▋ | 768kB 31kB/s eta 0:00 58% |██████████████████▉ | 778kB 37kB/s eta 0:00 59% |███████████████████ | 788kB 31kB/s eta 0:00 60% |███████████████████▎ | 798kB 35kB/s eta 0:0 61% |███████████████████▋ | 808kB 37kB/s eta 0:0 61% |███████████████████▉ | 819kB 34kB/s eta 0:0 62% |████████████████████ | 829kB 34kB/s eta 0:0 63% |████████████████████▎ | 839kB 29kB/s eta 0: 64% |████████████████████▌ | 849kB 31kB/s eta 0: 64% |████████████████████▉ | 860kB 32kB/s eta 0: 65% |█████████████████████ | 870kB 35kB/s eta 0: 66% |█████████████████████▎ | 880kB 35kB/s eta 0 67% |█████████████████████▌ | 890kB 39kB/s eta 0 68% |█████████████████████▉ | 901kB 35kB/s eta 0 68% |██████████████████████ | 911kB 40kB/s eta 0 69% |██████████████████████▎ | 921kB 41kB/s eta 70% |██████████████████████▌ | 931kB 48kB/s eta 71% |██████████████████████▊ | 942kB 58kB/s eta 71% |███████████████████████ | 952kB 49kB/s eta 72% |███████████████████████▎ | 962kB 54kB/s eta 73% |███████████████████████▌ | 972kB 55kB/s eta 74% |███████████████████████▊ | 983kB 66kB/s eta 75% |████████████████████████ | 993kB 70kB/s eta 75% |████████████████████████▎ | 1.0MB 75kB/s et 76% |████████████████████████▌ | 1.0MB 71kB/s et 77% |████████████████████████▊ | 1.0MB 67kB/s et 78% |█████████████████████████ | 1.0MB 54kB/s et 78% |█████████████████████████▎ | 1.0MB 61kB/s e 79% |█████████████████████████▌ | 1.1MB 75kB/s e 80% |█████████████████████████▊ | 1.1MB 76kB/s e 81% |██████████████████████████ | 1.1MB 82kB/s e 82% |██████████████████████████▎ | 1.1MB 65kB/s 82% |██████████████████████████▌ | 1.1MB 72kB/s 83% |██████████████████████████▊ | 1.1MB 78kB/s 84% |███████████████████████████ | 1.1MB 66kB/s 85% |███████████████████████████▎ | 1.1MB 79kB/s 85% |███████████████████████████▌ | 1.1MB 92kB/s 86% |███████████████████████████▊ | 1.1MB 73kB/s 87% |████████████████████████████ | 1.2MB 73kB/s 88% |████████████████████████████▎ | 1.2MB 57kB/ 88% |████████████████████████████▌ | 1.2MB 59kB/ 89% |████████████████████████████▊ | 1.2MB 65kB/ 90% |█████████████████████████████ | 1.2MB 50kB/ 91% |█████████████████████████████▏ | 1.2MB 51kB 92% |█████████████████████████████▌ | 1.2MB 51kB 92% |█████████████████████████████▊ | 1.2MB 42kB 93% |██████████████████████████████ | 1.2MB 47kB 94% |██████████████████████████████▏ | 1.2MB 46k 95% |██████████████████████████████▌ | 1.3MB 46k 95% |██████████████████████████████▊ | 1.3MB 50k 96% |███████████████████████████████ | 1.3MB 45k 97% |███████████████████████████████▏| 1.3MB 50 98% |███████████████████████████████▍| 1.3MB 58 99% |███████████████████████████████▊| 1.3MB 52 99% |████████████████████████████████| 1.3MB 58 100% |████████████████████████████████| 1.3MB 73kB/s
Collecting wheel
Downloading https://files.pythonhosted.org/packages/5a/9b/6aebe9e2636d35d1a93772fa644c828303e1d5d124e8a88f156f42ac4b87/wheel-0.32.2-py2.py3-none-any.whl
Installing collected packages: pip, wheel
Successfully installed pip-18.1 wheel-0.32.2
/tmp/tmpRRrzFV/pip.zip/pip/_vendor/urllib3/util/ssl_.py:160: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.io/en/latest/advanced-usage.html#ssl-warnings
##########1030
http://www.runoob.com/django/django-nginx-uwsgi.html
https://www.cnblogs.com/Erick-L/p/7066455.html
https://www.aliyun.com/jiaocheng/518116.html
[root@pythontest conf]# [uWSGI] getting INI configuration from /etc/uwsgi9090.ini
[1]+ Done uwsgi --ini /etc/uwsgi9090.ini
[root@pythontest conf]# /usr/local/nginx/sbin/nginx
-bash: /usr/local/nginx/sbin/nginx: 没有那个文件或目录
[root@pythontest conf]# /usr/local/nginx-1.5.6/sbin/nginx
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
nginx: [emerg] still could not bind()
##solution
cd /var/run
touch uwsgi9090.pid
chmod 777 uwsgi9090.pid
edit file
/usr/local/nginx-1.5.6/conf/nginx.conf
location / {
# root html;
# index index.html index.htm;
include uwsgi_params;
uwsgi_pass 127.0.0.1:9090;
uwsgi_param UWSGI_SCRIPT demosite.wsgi;
uwsgi_param UWSGI_CHDIR /app/demosite;
index index.html index.htm;
client_max_body_size 35m;
}
edit file /etc/uwsgi9090.ini
[uwsgi]
socket = 127.0.0.1:9090
master = true //主进程
vhost = true //多站模式
no-site = true //多站模式时不设置入口模块和文件
workers = 2 //子进程数
reload-mercy = 10
vacuum = true //退出、重启时清理文件
max-requests = 1000
limit-as = 512
buffer-size = 30000
pidfile = /var/run/uwsgi9090.pid
daemonize = /website/uwsgi9090.log
pythonpath = /usr/local/lib/python2.7/site-packages
uwsgi --ini /etc/uwsgi9090.ini &
ps -ef|grep uwsgi
check log
tail -f /website/uwsgi9090.log
/usr/local/nginx-1.5.6/sbin/nginx
ps -ef|grep nginx