apache上部署django的静态文件

一直在优化自己博客的代码, 昨天把css样式表分离出来, 用作静态

文件, 但是自己还没学django怎么使用静态文件, 经过一番google

终于解决了。

django 使用静态文件有两种方法, 一种就是部署在django上, 另外一种

是部署在apache 上, 前一种方法有一定的缺陷, 效率不高, 而且会造

成一定的安全威胁, 具体我也不知道, 大家可以看官方文档, 但是还是

向大家介绍一下。

  1. 可以在你的项目下建一个static目录, 在settings.py 中添加:
    #填写你静态文件的绝对路径

STATIC_PATH = ‘/your project path/static/‘ 

  1. 打开url.py : import settings

然后在urlpatterns中加入:

(r‘^static/(?P<path>.*)$‘,‘django.views.static.serve‘,  
                      {‘document_root‘:settings.STATIC_PATH})
  1. 最后修改template, 在需要静态文件的地方, 把代码修改为: 

不过我觉得第二种方法更简单, 网上很多资料都不是很清楚, 我自己琢磨出

来的:

  1. 配置一下mod_wsgi 里的文件, 也就是你以前配置的脚本:

如果是ubuntu, 那应该是http.conf 文件, 而fedora的话, 是wsgi.conf文件

只要按照葫芦画瓢就可以, 就像是添加django管理界面的静态文件那样, 加上

Alias /static/ /usr/www/your project/static
<Directory "/static/">
    Order allow,deny
    Options Indexes
    Allow from all
    IndexOptions FancyIndexing
</Directory>

代码的意思是, 你在你项目的目录下建一个static目录, 然后将你的静态文件

放在里面。

最后修改一下要加载静态文件的地方, 如ccs 样式表:

<link rel="stylesheet" type="text/css" href="/static/your css file" />

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。