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实现端口转发TCP代理的实现示例

    使用Nginx实现端口转发TCP代理的实现示例

    本文主要介绍了使用Nginx实现端口转发TCP代理的实现示例,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-12-12
  • nginx通过nginx_upstream_check_module实现后端健康检查

    nginx通过nginx_upstream_check_module实现后端健康检查

    nginx的健康检查有两种,一种是被动健康检查,也就是nginx自带健康检查模块ngx_http_upstream_module,另一种就是主动健康检查,使用第三方模块nginx_upstream_check_module,下面就来介绍一下,感兴趣的可以了解一下
    2024-08-08
  • Nginx动静分离实现案例代码解析

    Nginx动静分离实现案例代码解析

    这篇文章主要介绍了Nginx动静分离实现案例代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 一文详解Nginx日志的查找与分析技巧

    一文详解Nginx日志的查找与分析技巧

    在维护 Web 服务器时,Nginx 就像一位沉默的守门人,它通常运行得非常稳定,但一旦出现 502 Bad Gateway 或页面加载缓慢时,很多新手面对黑底白字的终端会感到迷茫,本文将带你快速掌握 Nginx 日志的查找与分析技巧,助你从容应对服务器故障,需要的朋友可以参考下
    2025-12-12
  • Nginx $remote_addr和$proxy_add_x_forwarded_for变量的实现

    Nginx $remote_addr和$proxy_add_x_forwarded_for变量的实现

    本文主要介绍了Nginx $remote_addr和$proxy_add_x_forwarded_for变量的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2024-08-08
  • Nginx 分发策略的实现

    Nginx 分发策略的实现

    分发策略是将客户端请求根据一定的规则或算法,可以分配到不同的后端服务器上,本文就来介绍一下Nginx分发策略的实现,具有一定的参考价值,感兴趣的可以了解一下
    2025-02-02
  • 基于nginx设置浏览器协商缓存过程详解

    基于nginx设置浏览器协商缓存过程详解

    这篇文章主要介绍了基于nginx设置浏览器协商缓存过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-12-12
  • nginx反向代理之多端口映射的实现

    nginx反向代理之多端口映射的实现

    这篇文章主要介绍了nginx反向代理之多端口映射的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-08-08
  • Nginx高可用Keepalived的具体使用

    Nginx高可用Keepalived的具体使用

    Keepalived是一种实现高可用的软件,基于VRRP协议,可以自动将虚拟IP地址切换到备用服务器,具有一定的参考价值,感兴趣的可以了解一下
    2024-12-12
  • tomcat在nginx中的配置方式

    tomcat在nginx中的配置方式

    文章介绍了如何在Linux系统上安装和配置Tomcat,并通过Nginx进行代理,首先,下载并解压Tomcat压缩包,然后启动Tomcat并查看日志,接着,配置Nginx以代理Tomcat的8080端口,并确保80端口已开放,最后,重新加载Nginx配置并测试代理是否成功
    2024-12-12

最新评论