2025年3月22日 星期六 甲辰(龙)年 月廿一 设为首页 加入收藏
rss
您当前的位置:首页 > 计算机 > 服务器 > Nginx

使用nginx搭建文件服务器

时间:04-11来源:作者:点击数:45

前言

今天又折腾了一下,将网站里的js、css和img都提出去了,又弄了一个单独的文件服务器(nginx),用来存放这些静态文件。

目的是啥?cdn类似吧。

一:启用新二级域名访问静态文件

  • # 进入到nginx的配置文件目录下
  • cd /etc/nginx/conf.d
  • # 新建静态文件服务器的配置文件
  • vim cdn.conf
  • # 添加如下配置server {
  • listen 80;
  • server_name cdn.flyat.cc;
  • root /var/www/domain/cdn/static;
  • #缓存配置
  • location ~ .*\.(jpg|png|ico)(.*){
  • expires 30d;
  • }
  • #缓存配置
  • location ~ .*\.(js|css)(.*){
  • expires 7d;
  • }
  • location / {
  • add_header Access-Control-Allow-Origin *;
  • auth_basic "Restricted";## 输入密码时的提示语
  • auth_basic_user_file /etc/nginx/pass_file;## 显示认证时的用户密码文件存放路径
  • autoindex on; ##显示索引
  • autoindex_exact_size on; ##显示大小
  • autoindex_localtime on; ##显示时间
  • # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  • # proxy_set_header X-Forwarded-Proto $scheme;
  • # proxy_set_header X-Forwarded-Port $server_port;
  • }
  • }

(至于怎么安装nginx,请看此文

配置完成后,重新加载下 nginx的配置文件(免重启了)

  • service nginx reload

OK这样的话就已经配置好了一台静态资源服务器,可以通过指定的server_name直接访问静态资源文件了

但是这样真的好了吗?因为这台服务器并没有加限制,所以任何人都能访问到,如果不想让别人访问,只想弄成一个私有的服务器,这时候可以通过nginx自带的认证模块加以限制。

此处用到的两个配置项

  • # 输入密码时的提示语
  • auth_basic "Restricted";
  • # 显示认证时的用户密码文件存放路径
  • auth_basic_user_file /etc/nginx/pass_file;

最后完整的cdn.conf内容为

  • server {
  • listen 80;
  • server_name cdn.flyat.cc;
  • root /var/www/domain/cdn/static;
  • #缓存配置
  • location ~ .*\.(jpg|png|ico)(.*){
  • expires 30d;
  • }
  • #缓存配置
  • location ~ .*\.(js|css)(.*){
  • expires 7d;
  • }
  • location / {
  • add_header Access-Control-Allow-Origin *;
  • auth_basic "Restricted";## 输入密码时的提示语
  • auth_basic_user_file /etc/nginx/pass_file;## 显示认证时的用户密码文件存放路径
  • autoindex on; ##显示索引
  • autoindex_exact_size on; ##显示大小
  • autoindex_localtime on; ##显示时间
  • # proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  • # proxy_set_header X-Forwarded-Proto $scheme;
  • # proxy_set_header X-Forwarded-Port $server_port;
  • }
  • }

二:htpasswd命令去生成秘钥文件

这儿还要用到htpasswd命令去生成秘钥文件(文件中包含用户信息)

执行一下命令,生成用户秘钥文件

  • iZ25t60Z:/etc/nginx# htpasswd -c -d /etc/nginx/pass_file xxx
  • New password:
  • Re-type new password:
  • Adding password for user xxx

这样就在/etc/nginx/pass_file 中就添加了一个用户

此时在去访问服务器看一下,会弹出用户认证窗口

使用nginx搭建文件服务器文章的图片

到目前为止,就真正完成了静态资源服务器的搭建

方便获取更多学习、工作、生活信息请关注本站微信公众号城东书院 微信服务号城东书院 微信订阅号
推荐内容
相关内容
栏目更新
栏目热门