一 下载站点

1.1 下载站点配置

语法:autoindex on | off;
默认值:autoindex off;
配置段:http,server,location

Nginx默认不允许列出整个目录浏览,需要如下配置:
  1 [root@nginx01 ~]# mkdir /download			#创建Nginx服务端下载目录
2 [root@nginx01 ~]# cp /etc/nginx/conf.d/default.conf /download/
3 [root@nginx01 ~]# cp /etc/nginx/ /download/ #创建测试文件
  1 [root@nginx01 ~]# vi /etc/nginx/conf.d/down.conf
2 server {
3 listen 80;
4 server_name download.linuxds.com;
5 location /down {
6 alias /download;
7 access_log /var/log/nginx/down.access.log main;
8 error_log /var/log/nginx/down.error.log warn;
9 autoindex on;
10 autoindex_localtime on;
11 autoindex_exact_size off;
12 charset utf-8,gbk;
13
14 if ($request_filename ~* ^.*?\.(txt|doc|pdf|rar|gz|zip|docx|exe|xlsx|ppt|pptx|conf)$)
15 {add_header Content-Disposition 'attachment;';}
16 }
17 }
  1 [root@nginx01 ~]# nginx -t -c /etc/nginx/nginx.conf		#检查配置文件
2 [root@nginx01 ~]# nginx -s reload #重载配置文件
释义:
autoindex on:on开启目录浏览
autoindex_exact_size off:修改为off,以KB、MB、GB显示文件大小,默认为on,以bytes显示出⽂件的确切⼤⼩。
autoindex_localtime on:显示的⽂件时间为⽂件的服务器时间。默认为off,显示的⽂件时间为GMT时间。
charset utf-8,gbk:默认中文目录乱码,需要添加此行解决乱码问题。
注意:


1:展示目录选择使用alias而不是root


原因是alias默认不会拼接location后面的/down,而root会进行拼接,即若写为root /download,实际展示的目录是/download/down,因此如上选择alias更为合适。


2:添加了对$request_filename内置变量的if判断


目的是为了让txt等文件进行下载而不是浏览,如果不做此配置,点击目录下的txt文件,大部分浏览器默认是直接浏览而非下载。此处通过添加响应头来控制:


Content-Disposition:该属性有两种类型:inline 和 attachment;




  • inline :将文件内容直接显示在页面

  • attachment:弹出对话框让用户下载

1.2 测试验证

浏览器访问:http://download.linuxds.com/down/
http://download.linuxds.com/down/nginx/

005.Nginx配置下载站点的更多相关文章

  1. 配置nginx作为下载站点

    nginx默认情况是不允许列出整个目录浏览下载 1)autoindex参数详解 autoindex on //on开启目录浏览 autoindex_exact_size off; //off显示出文件 ...

  2. Nginx 配置下载附件让浏览器提示用户是否保存

    Nginx配置下载附件让浏览器提示用户是否保存   by:授客  QQ:1033553122   测试环境 nginx-1.10.0 问题描述: 前端页面,IE11浏览器下请求下载附件模板,针对xls ...

  3. asp.net中 使用Nginx 配置 IIS站点负载均衡

    这是一偏初学者入门的内容,发现有问题的地方,欢迎留言,一起学习,一起进步 本文主要记录一下在Windows平台中,IIS站点如何使用Nginx 做一个简单的负载均衡  一. 准备工作: 官网下载安装包 ...

  4. 打开nginx配置的站点报错500

    打开站点报错500的原因 有很多,这里只说明一点:nginx 的fastcgi.conf配置引起的问题 环境说明 1 站点目录结构 wwwroot website public application ...

  5. nginx配置之站点服务请求功能配置

    站点服务请求功能配置:html/ nginx.conf中的http{}中的server{}: server { listen 85; server_name localhost; #charset k ...

  6. Nginx 配置多站点vhost

    假设你想在Linux Nginx中用不同的域名访问不同的目录,这时就要配置多个vhost,具体配置如下,假设网站根目录设定在/var/www/ 1.在/var/www/下新建两个目录 /var/www ...

  7. nginx 配置下载text等文件

    当前的浏览器能够识别文件格式,如果浏览器本身能够解析就会默认打开,如果不能解析就会下载该文件.比如txt文件就直接被解析,还有其他文件也是一样. 在nginx.conf配置文件中添加 add_head ...

  8. Liunx之nginx配置

    一.nginx安装 卸载yum安装的ngjnx yum remove nginx -y 编译安装nginx步骤 编译安装nginx的步骤 1.解决软件依赖 yum install gcc patch ...

  9. Nginx配置站点适配PC和手机

    考虑到站点的在多种设备下的兼容性,有非常多站点会有手机版和电脑版两个版本号.訪问同一个站点URL,当服务端识别出用户使用电脑訪问.就打开电脑版的页面,用户假设使用手机訪问,则会得到手机版的页面. 1. ...

随机推荐

  1. AS中将module转成library的步骤

    转换步骤是在Android Studio 2.3版本下进行的,其他版本未测试 将要变成library的module的gradle文件的第一行 修改前:apply plugin: 'com.Androi ...

  2. 《MySQL技术内幕:InnoDB存储引擎》读书笔记

    一.Mysql体系结构和存储引擎 1. 概念:              数据库:物理操作系统文件或其他形式文件类型的集合.(是文件的集合,是依照某种数据模型组织起来并存放于二级存储器中的数据集合.) ...

  3. 循序渐进VUE+Element 前端应用开发(12)--- 整合ABP框架的前端登录处理

    VUE+Element 前端是一个纯粹的前端处理,前面介绍了很多都是Vue+Element开发的基础,从本章随笔开始,就需要进入深水区了,需要结合ABP框架使用(如果不知道,请自行补习一下我的随笔:A ...

  4. Python在Linux下编译安装

    [准备环境] Linux centos [前言] 1 linux下默认带Python,带的是2.7版本的 ,如果需要升级版本,需要把系统的自带的Python改名或者卸载,再次安装你所需要的Python ...

  5. Beta冲刺--冲刺总结

    这个作业属于哪个课程 软件工程 (福州大学至诚学院 - 计算机工程系) 这个作业要求在哪里 Beta 冲刺 这个作业的目标 Beta冲刺--冲刺总结 作业正文 如下 其他参考文献 ... Beta冲刺 ...

  6. 5种经典的Linux桌面系统

    最近一直在准备Linux相关的PPT,对于一个老码农来说Linux系统自然是比较熟悉了,随口可以说出好几种Linux的版本,然而对于计算机初学者可能就知道windows操作系统.也许你告诉他你可以安装 ...

  7. JVM之HotSpot虚拟机是如何发起内存回收的?

    1.背景 在上一节中,我们掌握了垃圾收集的一些算法,也弄明白了分代回收的原理, 那么HotSpot虚拟机是如何发起内存回收的? 2.如何找到GC Roots根节点(枚举根节点) 从可达性分析中GC R ...

  8. VulnHub PowerGrid 1.0.1靶机渗透

    ​本文首发于微信公众号:VulnHub PowerGrid 1.0.1靶机渗透,未经授权,禁止转载. 难度评级:☆☆☆☆☆官网地址:https://download.vulnhub.com/power ...

  9. MySQL新密码机制介绍caching_sha2_password

    MySQL添加了对身份验证插件的支持,该插件现在称为mysql_native_password.该mysql_native_password插件使用SHA1哈希 将密码(SHA1(SHA1(passw ...

  10. 新手安装配置git简洁教程

    第一步,下载安装git 打开 [git官网] https://git-scm.com/,下载git对应操作系统的版本. 所有东西下载慢的话就可以去找镜像!官网下载太慢,我们可以使用淘宝镜像下载:htt ...