• 在centos 配置python django环境 总结


    1,安装 python3  主要是版本问题,用3.6 好过3.7

    报错ModuleNotFoundError: No module named '_ctypes'

    https://www.cnblogs.com/Mr-wangxd/p/7028285.html

    2,安装pip时一直有    报错pkg_resources.DistributionNotFound: The 'pip==7.1.0' distribution was not found and is ....

    几番折腾,还不小心 把好多原来python的都删除,这个真的是误操作!

    python -m pip uninstall pip setuptools 再重装,还是不行,就

    主要是把  先 ls - L   查看它的软连接到那里。

    ls -l grep python   

    ls -l grep pip

    ln -s /usr/python/bin/python3 /usr/bin/python
    ln -s /usr/python/bin/pip3 /usr/bin/pip   当我正确指向新的python3目录下的pip3后,就正确了,不再有版本问题。

    关键命令:

    python -m pip uninstall pip setuptools   pip install --upgrade setuptools

    python -m pip --version   这个查版本,对这个错误,重要

    centos7.2,系统自带python2.7。升级到 python3 时, import sqlite3 出现 no module named _sqlite3的解决方法

    https://blog.csdn.net/sEgiraffe/article/details/76380802

    然后 运行django   manage.py runserver 0.0.0.0:8000   出现安装sqlite3的的问题 

    https://blog.csdn.net/huzhenwei/article/details/7339548 用了第34个方法解决

    然后再出现,ImportError: dynamic module does not define module export function (PyInit__sqlite3)

    正在解决中.....

    这个问题过了又一天,= = , 

    我重装了,我重装了,重装了! 先用 rm -rf   删除所有 python3和sqlite3的文件和文件夹。  

    find / -name _sqlite3.so    自动生成,终于成功了!

    /usr/local/lib/python3.6/lib-dynload/_sqlite3.cpython-36m-x86_64-linux-gnu.so  

    find / -name sqlite3

    find / -name python3.6

    然后用make clean   结合这几个,去重装,最后成功了!

    https://blog.csdn.net/laoyang360/article/details/75094004

    https://www.cnblogs.com/i1991/p/9497259.html

    https://blog.csdn.net/nuli888/article/details/51973738

    ------直觉总结:  一,需要先装好sqlite3   重点要: yum install sqlite-devel

    然后装 python3 时要   ./configure --enable-optimizations

    和vi setup.py,把

    '/usr/local/sqlite3',
    '/usr/local/sqlite3/include',
    '/usr/local/sqlite3/include/sqlite3',   注意目录为sqlite3的目录

    而最后,不要自己 建 软连接    这个当然是我怀疑的 ,直接用python3 和 pip3 就可以了!

    mv /usr/bin/python /usr/bin/python.bak
    $ ln -s /usr/python/bin/python3 /usr/bin/python

     

    部署django 先停掉nginx占用80端口

    nohup python3 manage.py runserver 0.0.0.0:8000 >> output.log 2>&1 &
    nohup python3 manage.py runserver 0.0.0.0:80 >> output.log 2>&1 &
    netstat -nap|grep number

    netstat -nap|grep python

    kill -9 进程号
    netstat -lanpt | grep -w "80"
    ps -ef|grep nginx
    kill -QUIT 26291
    nginx

     重要,在  include /etc/nginx/conf.d/*.conf;

    uwsgi --http :8001 --chdir /home/python3/ --wsgi-file ask_page/wsgi.py --master --processes 4 --threads 2 --stats 127.0.0.1:9191
    重要 home/python3/目录下 执行下:
    uwsgi --http :8000 --module djangoproj.wsgi
    uwsgi --ini djangoproj_uwsgi.ini

    good https://www.cnblogs.com/frchen/p/5709533.html 

    Nginx部署Django

    ----------------- 可以同样的80端口,在default.conf里,诺在其它conf里需要servername是域名
    charset UTF-8;
    access_log /home/python3_access.log;
    error_log /home/python3_error.log;
    #root /ap;
    client_max_body_size 75M;

    location /ap/ {
    include uwsgi_params;
    uwsgi_pass 127.0.0.1:8080;
    uwsgi_read_timeout 2;
    }
    location /res {
    expires 30d;
    autoindex on;
    add_header Cache-Control private;
    alias /home/python3/res/;
    }

    在centos下,linux下,写文件会有错误, 不是自己创建的,没有执行、更改它的权限,搞了两个小时!我的生命啊!

    还有装wxpython,等 python 文件,如果不成功,优先考虑没有 whl 文件,这是定制的,linux系统下也有whl!  

    如:https://extras.wxpython.org/wxPython4/extras/linux/

     因为这个,没耐心看文档+英语不好及排斥英语, 搞了5天业余时间!!! 【因为删错了一个文件,而重装系统,又想转系统而又折腾失败】我的生命就是和别人的生命不同!

  • 相关阅读:
    BestCoder Round #65 hdu5590(水题)
    codeforces Ebony and Ivory(水题)
    codeforces 630B Moore's Law
    BestCoder Round #69 (div.2)(hdu5611)
    BestCoder Round #73 (div.2)(hdu 5630)
    codeforces 630A Again Twenty Five!
    codeforces 630C Lucky Numbers
    codeforces 630D Hexagons!
    Codeforces243C-Colorado Potato Beetle(离散化+bfs)
    hdu4453-Looploop(伸展树)
  • 原文地址:https://www.cnblogs.com/-aye/p/9517580.html
Copyright © 2020-2023  润新知