nginx代理文件目录、下载站点方式

 更新时间:2025年03月19日 14:17:56   作者:头顶一点云  
这篇文章主要介绍了nginx代理文件目录、下载站点方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教

前言

Nginx默认是不允许列出整个目录浏览下载。

如果只是单纯的往html文件中添加压缩文件,网页就会报错,那该怎么才能达到一堆压缩文件都显示在网页呢

一、访问站点配置

先上配置再解释

	location /mylog {
		  autoindex on;
          charset utf-8;
		  autoindex_exact_size off;
		  autoindex_localtime off;
		  auth_basic "Auth access Blog Input your Passwd!";
	      auth_basic_user_file /usr/local/mdtassistant/nginx/users;
          alias /usr/local/mdtassistant/version;
       }
  • 效果

  • 带密码效果

解释如下

  • autoindex on; 模块显示文件
  • charset utf-8; 文件编码
  • autoindex_exact_size off | on 默认为on, 显示出⽂件的确切⼤⼩,单位是bytes; 修改为off,显示出⽂件的⼤概⼤⼩,单位是kB或者MB或者GB
  • autoindex_localtime on | off 默认为off,显示的⽂件时间为GMT时间;修改为on, 显示的⽂件时间为⽂件的服务器时间(这个是文件上传的时间)

那 这两个干嘛的

auth_basic “Auth access Blog Input your Passwd!”;
auth_basic_user_file /usr/local/mdtassistant/nginx/users;

访问时输入密码的

二、添加登录权限功能

1.密码生成

使用htpasswd工具生成密码。

如果没有htpasswd工具,可以先进行安装,安装命令:

yum -y install htpasswd

如果这个安装不了就装下面这个

yum install httpd-tools

密码生成命令格式:htpasswd -c 存放用户名密码的文件路径 用户名

htpasswd -c /usr/local/nginx/passwd/users lc

提示输入密码,输入两次

然后会生成一个加密串,这样就好了

2.配置nignx

   auth_basic "Auth access Blog Input your Passwd!";
   auth_basic_user_file /usr/local/mdtassistant/nginx/users;

auth_basic_user_file 密码文件存放位置

三、路径加 / 如何区分

  • 如果proxy_pass末尾有斜杠/,proxy_pass不拼接location的路径
  • 如果proxy_pass末尾无斜杠/,proxy_pass会拼接location的路径

1.proxy_pass末尾有斜杠

location  /api/ {
    proxy_pass http://127.0.0.1:8000/;
}
  • 请求地址:http://localhost/api/test
  • 转发地址:http://127.0.0.1:8000/test

2.proxy_pass末尾无斜杠

location  /api/ {
    proxy_pass http://127.0.0.1:8000;
}
  • 请求地址:http://localhost/api/test
  • 转发地址:http://127.0.0.1:8000/api/test

3.proxy_pass包含路径,且末尾有斜杠

location  /api/ {
    proxy_pass http://127.0.0.1:8000/user/;
}
  • 请求地址:http://localhost/api/test
  • 转发地址:http://127.0.0.1:8000/user/test

4.proxy_pass包含路径,末尾无斜杠

location  /api/ {
    proxy_pass http://127.0.0.1:8000/user;
}
  • 请求地址:http://localhost/api/test
  • 转发地址:http://127.0.0.1:8000/usertest

四、文件路径 alias与root区别

  • root的处理结果是:root路径+location路径
  • alias的处理结果是:使用alias路径替换location路径

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

您可能感兴趣的文章:

相关文章

  • Nginx利用Lua+Redis实现动态封禁IP的方法

    Nginx利用Lua+Redis实现动态封禁IP的方法

    在站点遇到攻击且无明显攻击特征,造成站点访问慢,nginx不断返回502等错误时,可利用nginx+lua+redis对该IP进行封禁,这篇文章主要给大家介绍了关于Nginx利用Lua+Redis实现动态封禁IP的相关资料,需要的朋友可以参考下
    2018-12-12
  • nginx 配置服务启动的教程详解

    nginx 配置服务启动的教程详解

    本文给大家详细介绍了nginx 配置服务启动的相关知识,非常不错,具有一定的参考借鉴价值,感兴趣的朋友跟随脚本之家小编一起学习吧
    2018-05-05
  • Nginx带宽控制(限速模块使用)

    Nginx带宽控制(限速模块使用)

    这篇文章主要介绍了Nginx带宽控制(限速模块使用),本文讲解了使用limit_rate和limit_rate_aft以及limit_conn实现带宽控制的例子,需要的朋友可以参考下
    2015-03-03
  • keepalived+nginx实现网站高可用性

    keepalived+nginx实现网站高可用性

    本文主要介绍了keepalived+nginx实现网站高可用性,包含配置Keepalived实现双主热备集群架构,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2025-02-02
  • 全面了解Nginx中的HTTP协议相关模块配置

    全面了解Nginx中的HTTP协议相关模块配置

    HTTP的处理是Nginx服务器的最重要功能,这里我们就带大家来全面了解Nginx中的HTTP协议相关模块配置,需要的朋友可以参考下
    2016-07-07
  • Nginx服务器中的模块编写及相关内核源码初探

    Nginx服务器中的模块编写及相关内核源码初探

    这篇文章主要介绍了Nginx服务器中的模块编写及相关源码初探,文中以一个简单的Hello world模块的编写来深入分析Nginx内核所用到的基础函数,需要的朋友可以参考下
    2015-12-12
  • nginx多location配置实例代码

    nginx多location配置实例代码

    公司测试环境使用nginx部署多个前端项目,下面这篇文章主要给大家介绍了关于nginx多location配置的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2023-04-04
  • 使用nginx+tomcat+keepalived实现高可用的详细步骤

    使用nginx+tomcat+keepalived实现高可用的详细步骤

    这篇文章主要介绍了nginx+tomcat+keepalived实现高可用,包括安装nginx服务的步骤,详细介绍了安装keepalived的方法,对nginx+tomcat+keepalived高可用相关知识感兴趣的朋友一起看看吧
    2022-03-03
  • Nginx 上传大文件超时解决办法

    Nginx 上传大文件超时解决办法

    这篇文章主要介绍了Nginx 上传大文件超时解决办法的相关资料,这里上传文件并设置nginx的配置文件防止超时的情况,需要的朋友可以参考下
    2017-07-07
  • Nginx rewrite和proxy_pass的区别及说明

    Nginx rewrite和proxy_pass的区别及说明

    这篇文章主要介绍了Nginx rewrite和proxy_pass的区别及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06

最新评论