Django 关闭Debug后使用Nginx做静态文件的访问

Django 关闭Debug后使用Nginx做静态文件的访问

关闭Django 的Debug参数

1 . 修改settings.py配置文件

DEBUG = False

2 . settings.py添加静态文件目录的指向,以及BASE_DIR的路径

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))

STATIC_URL = '/static/'
STATICFILES_DIRS = (
    os.path.join(BASE_DIR, "static"),
)

3 . 项目的同级目录创建/static/目录

Nginx配置

1 . 修改nginx.conf配置文件通过upstream将请求抛给 8000端口

worker_processes  2;
events {
    worker_connections  1024;
    use epoll;
}
http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;
    tcp_nopush on;
    tcp_nodelay on;
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                     '"$http_user_agent" "$http_x_forwarded_for"';
    client_max_body_size 10m;
    client_header_timeout 15;
    client_body_timeout 15;
    send_timeout 15;
    gzip on;
    gzip_min_length 1k;
    gzip_buffers 4 32k;
    gzip_http_version 1.1;
    gzip_comp_level 9;
    gzip_types  text/css text/xml  application/javascript;
    gzip_vary on;

#####################################
    upstream python-handler {
        # 
        server 127.0.0.1:8000;
}

server {
    listen         8080;
    server_name    192.8.21.100;
    charset UTF-8;
    access_log      /var/log/nginx/django_pro01_access.log;
    error_log       /var/log/nginx/django_pro01_error.log;

    client_max_body_size 75M;

    location / {
        proxy_pass http://python-handler;
    }
    location /static {
        expires 30d;
        autoindex on;
        add_header Cache-Control private;
        alias /Django/aws/static;
     }
 }
}
#######################################

转载于:https://www.cnblogs.com/baolin2200/p/7388955.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Django访问静态文件有几种方法。一种方法是在settings.py中设置STATIC_URL和STATIC_ROOT。STATIC_URL是静态文件的URL前缀,STATIC_ROOT是静态文件的根目录。你可以将静态文件放在STATIC_ROOT目录下,并通过STATIC_URL访问。例如,如果你的STATIC_URL设置为'/static/',那么你可以通过'/static/css/style.css'来访问css文件。另一种方法是使用django.views.static.serve视图函数来提供静态文件访问。你可以在urls.py中添加类似下面的代码来配置静态文件访问路径: ``` from django.conf import settings from django.conf.urls.static import static urlpatterns = \[ # other url patterns \] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) ``` 这样,你就可以通过URL来访问静态文件了。例如,如果你的STATIC_URL设置为'/static/',那么你可以通过'/static/css/style.css'来访问css文件。另外,你还可以使用django.views.static.serve视图函数来提供静态文件访问。你可以在urls.py中添加类似下面的代码来配置静态文件访问路径: ``` from django.conf.urls import url from django.views.static import serve urlpatterns = \[ # other url patterns url(r'^static/(?P<path>.*)$', serve, {'document_root': '/path/to/static/files'}), \] ``` 这样,你就可以通过URL来访问静态文件了。例如,如果你的静态文件存放在'/path/to/static/files'目录下,那么你可以通过'/static/css/style.css'来访问css文件。 #### 引用[.reference_title] - *1* *2* [Django关于访问静态文件总结](https://blog.csdn.net/WaitForFree/article/details/39815507)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [8-Django静态文件访问](https://blog.csdn.net/LOVEYSUXIN/article/details/122324842)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值