软件版本详细介绍:
纯净操作系统:Centos7.2
Python版本:2.7.11
Django版本:1.11.17
查看系统版本
cat /etc/redhat-release
yum -y groupinstall Development tools或者yum groupinstall Development tools
yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel psmisc
如果没有安装wget的话,则安装:yum install wget
警告:如果卸载系统自带的python,则会导致某些软件不可用,谨慎!!
卸载方法:
强制删除已安装python及其关联:rpm -qa|grep python|xargs rpm -ev --allmatches --nodeps
删除残余文件:whereis python|xargs rm -frv
不想用系统自带的Python,自行安装前,先做如下操作:
mv /usr/bin/python /usr/bin/python275 (记住这个名称python275)
vi /usr/bin/yum 首行的/usr/bin/python,python改为python275
vi /usr/libexec/urlgrabber-ext-down 同上
下载Python:wget https://www.python.org/ftp/python/2.7.11/Python-2.7.11.tar.xz
解压: xz -d Python-2.7.11.tar.xz
tar -xvf Python-2.7.11.tar
进入Python-2.7.11目录
编译指定路径./configure --prefix=/usr/local/Python-2.7.11
安装:make && make install
创建链接:ln -s /usr/local/Python-2.7.11/bin/python /usr/bin/python
wget https://files.pythonhosted.org/packages/37/1b/b25507861991beeade31473868463dad0e58b1978c209de27384ae541b0b/setuptools-40.6.3.zip
unzip setuptools-40.6.3.zip
cd setuptools-40.6.3
python setup.py install
pip install django
pip install uwsgi
ln -s /usr/local/Python-2.7.11/bin/uwsgi /usr/bin/uwsgi
进入/usr/local/src/webroot目录
创建项目:django-admin.py startproject mysite
进入mysite:
创建:mkdir -p templates,用于存放模板文件
创建:mkdir -p static,用于存放静态文件
创建app:python manage.py startapp blog
进入/usr/local/src/webroot/mysite/mysite目录:
配置setting.py:
vi setting.py
修改:
ALLOWED_HOSTS=[’*’]
DEBUG=False
TEMPLATES的DIRS里添加模板路径os.path.join(BASE_DIR, ‘templates’)
尾部添加:STATICFILES_DIRS = (os.path.join(BASE_DIR,‘static’), )
保存退出:wq
配置urls.py:
vi urls.py
添加:
from blog import views
urlpatterns = [
…
url(r’’, views.index),
…
]
进入/usr/local/src/webroot/mysite/templates目录:
vi index.html
mysite
Hello World!
进入/usr/local/src/webroot/mysite/blog/目录:
vi views.py
添加:
def index(request):
return render(request, ‘index.html’)
保存退出
操作跟windows中一样
python manage.py runserver
图中红色字体中,表示还没同步到数据库,根据提示运行python manage.py migrate
再次启动项目就正常了
进入/usr/local/src/webroot/mysite目录,
vi mysite.xml
添加:
127.0.0.1:8008
/usr/local/src/webroot/mysite/
mysite.wsgi
4
uwsgi.log
保存退出
执行下面命令:
uwsgi -x mysite.xml
进入/usr/local目录:
wget http://nginx.org/download/nginx-1.13.7.tar.gz
解压:tar -zxvf nginx-1.13.7.tar.gz
进入nginx-1.13.7目录:
./configure && make && make install
配置NG:
nginx一般默认安装好的路径为/usr/local/nginx,进入该目录:
vi /conf/nginx.conf
server中修改:
include uwsgi_params;
uwsgi_pass 127.0.0.1:8008; #端口要和uwsgi里配置的一样
uwsgi_param UWSGI_SCRIPT mysite.wsgi; #wsgi.py所在的目录名+.wsgi
uwsgi_param UWSGI_CHDIR /usr/local/src/webroot/mysite; #项目路径
保存退出
再进入当前的sbin目录:
执行:./nginx
终端没有任何提示就证明nginx启动成功
在浏览器上访问
如果不能打开页面,尝试关闭防火墙再试
systemctl stop firewalld
或者查看uwsgi进程:ps -ef| grep uwsgi
然后杀掉uwsgi: kill -9 id
再进入虚拟环境重新启动uwsgi
再次执行:./nginx -s reload