Python 之DJango 网站部署

分类:Python |

人们常常习惯于自已所熟悉的, 避开自己所不会的, 我也如此, 09年以前习惯于win平台下Asp和PHP开发, Asp占多数时间, 得心应手, PHP也写, 但最多占30%的时间, 现在Asp 被淘汰了, PHP 成了主业, 目前落在了Mac+linux+php 的习惯里, 年龄在增, 时代在变,,,

记录一下开发Python 的博客网站部署过程的问题, 这里做一个总结: 

  1. 使用Django 复制了一个本Blog( php 之 Laravel )的Python 版本, 遇到N多问题, 目前为止还有一些没解决

    a. 架构不合理, 全部写在 def 没有使用类, 更别说设计思想

    b. 用户登录状态的复用度不高, 看着好难过 

    c. 实现了用户登录, 用户浏览, 用户个人信息管理, 发布管理文章, 分类, 标签, 上传图片, 图片选择等功能

    d. Docker 部署

  2. 部署过程中遇取的问题:

    a. 由于centos6.+ 默认安装 的Python2.6 版本, 而我是使用Pyhton2.7开发的, 报如下错:

        image.png

    3. 开始升级为2.7 :

yum -y install mysql-devel gcc zlib zlib-devel python-devel libffi-devel openssl openssl-devel 
wget https://www.python.org/ftp/python/2.7.14/Python-2.7.14.tgz   
tar -xvf Python-2.7.14.tgz  
cd Python-2.7.14
./configure --prefix=/opt/python2.7 --with-ssl 
make && make install

mv /usr/bin/python /usr/bin/python.2.6
rm -f /usr/bin/python-config
ln -s /opt/python2.7/bin/python /usr/bin/python
ln -s /opt/python2.7/bin/python-config /usr/bin/python-config
ln -s /opt/python2.7/include/python2.7/ /usr/include/python2.7 

wget https://bootstrap.pypa.io/get-pip.py
python get-pip.py
ln -s /opt/python2.7/bin/pip2.7 /usr/bin/pip2.7
sed -i "s/bin\/python/bin\/python2.6/g" /usr/bin/yum

注: 不要忘记修改yum 值否则会报什么module 的错误 

        vim /usr/bin/yum

        #!/usr/bin/python2.6 

  1. /opt/python2.7/bin/pip2 install MySQL-python 

settings.py 里开启DEBUG=True 后, 静态文件无法找到, 原因未知, 这里网上找了一个办法,  启动命令最后加上 --insecure 

即: /opt/python2.7/bin/python manage.py runserver 0.0.0.0:8000 --insecure & 

image.png


发布上线: http://python.updateweb.cn