zoukankan      html  css  js  c++  java
  • django部署

    一、常用命令

    yum install openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel gcc wget
    
    wget "https://www.python.org/ftp/python/3.6.1/Python-3.6.1.tgz"
    
    tar -zxvf Python-3.6.1.tgz
    
    cd Python-3.6.1
    
    mkdir /usr/python3.6
    
    ./configure --prefix=/usr/python3.6
    
    make && make install
    
    mv /usr/bin/python python.bak
    
    mv python1.bak /usr/bin/python
    
    ln -s /usr/python3.6/bin/python3 /usr/bin/python
    
    vi /usr/bin/yum
    
    
    vi /usr/libexec/urlgrabber-ext-down
    
    yum install deltarpm
    
    
    rm -r 文件夹名
    ln -s /usr/local/bin/pip3 /usr/bin/pip
    sudo apt-get install build-essential libssl-dev libffi-dev python-dev
    sudo ln -s /usr/bin/python3 /usr/bin/python
    sudo add-apt-repository ppa:ubuntu-toolchain-r/test
    sudo apt-get update
    sudo apt-get install g++-4.7 c++-4.7

    https://askubuntu.com/questions/61254/how-to-update-gcc-to-the-latest-versionin-this-case-4-7-in-ubuntu-10-04

    ubuntu16.04中将python3设置为默认:

    sudo update-alternatives --install /usr/bin/python python /usr/bin/python2 100
    sudo update-alternatives --install /usr/bin/python python /usr/bin/python3 150

    如果要切换到Python2,执行:

    sudo update-alternatives --config python
    # 1. 创建更改的文件
    python manage.py makemigrations
    # 2. 将生成的py文件应用到数据库
    python manage.py migrate

    二、django处理静态文件

    静态文件指的是js css 还有图片这些,配置方法如下

    1. 在设置文件(settings.py)中,installed_apps中添加 django.contrib.staticfiles

        然后设置static_url  

    STATIC_URL = '/static/'

    2. 在模板中的使用方式如下  

    {% load staticfiles %}
    <img src="{% static "my_app/myexample.jpg" %}" alt="My image"/>

    这种方式提供的是一种相对路径,当你将环境切换到CDN的时候会方便很多

    当然也可以用简单一些的方法---直接提供一个静态文件的url,不过在CDN中就要修改才可以使用了

    /static/my_app/myexample.jpg

    3. 把你的文件都放在一个文件夹下,比如

    my_app/static/my_app/myimage.jpg

    注:当debug设置True的时候上面的方法可以,但是False的时候会提示not found的错误 

    当debug设置为Fales的时候,设置方法如下(增加静态文件url,使用 django.contrib.staticfiles.views.serve()来寻找静态文件):

    from django.conf import settings
    from django.conf.urls.static import static
     
    urlpatterns = [
        # ... the rest of your URLconf goes here ...
    ] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

    注:也不推荐实际环境中用  

    当你有多个静态文件目录的时候可以使用下面的方式,设置STATICFILES_DIRS:

    STATICFILES_DIRS = [
        os.path.join(BASE_DIR, "static"),
        '/var/www/static/',
    ]

    注:django寻找静态文件默认找到地一个就会返回,不再进行后续查找,所以要注意安排顺序及目录 

     部署的步骤:

    1. 设置STATIC_ROOT:

    STATIC_ROOT = "/var/www/example.com/static/"

    2. 执行collectstatic命令:

    $ python manage.py collectstatic

    这会把静态文件拷贝到你设置的static_root目录下(这样可以更方便的和nignx集成,权限管理也更方便)

      

    参考链接见(django文档最详细):

    http://blog.csdn.net/WaitForFree/article/details/39815507

    http://blog.sina.com.cn/s/blog_6c663fa50101gope.html

    https://docs.djangoproject.com/en/1.9/howto/static-files/

    https://docs.djangoproject.com/en/1.9/ref/contrib/staticfiles/#django.contrib.staticfiles.views.serve      

  • 相关阅读:
    sparksql
    axis2客户端
    windows命令
    如何进行大数据分析及处理(总结)
    linux下如何关闭防火墙?如何查看防火墙当前的状态
    mysql 快速简单安装法
    数据分析笔记
    建设数据仓库的八个步骤
    Java工作记录
    IIS虚拟目录和应用程序
  • 原文地址:https://www.cnblogs.com/OnlyDreams/p/7201189.html
Copyright © 2011-2022 走看看