brew+nginx配置静态文件服务器

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6

背景

一下子闲下来了了解的我的人都知道我闲不下来。于是我在思考COS之后决定自己整一个本地的OSS实现静态文件的访问。那么首屈一指的就是我很熟的nginx。也算是个小复习吧复习一下nginx代理静态文件。

nginx的使用场景

  • 反向代理

作为中间层的服务器将来自客户端的请求转发到对应的后端服务器上

  • 动静分离

动指的是后端处理过的数据静静态的资源如图片、css、js代码。nginx可以直接提供静态资源访问动态的则直接转发到对应的后端服务

  • 负载均衡
http {
    upstream backend {
        server backend1.example.com;
        server backend2.example.com;
        server backend3.example.com;
    }
    
    server {
        listen 80;
        
        location / {
            proxy_pass http://backend;
        }
    }
}

以上配置的就是轮询的负载均衡算法还有随机加权轮训ip hash最小连接数基于URI的负载均衡等方式具体问题具体分析其实很好的做好了后端之前的负载工作。对还有一个神器keep alive感兴趣的可以了解一下nginx+keep alive 绝配。

  • 静态文件服务

nginx其实本身就是应对高并发的场景设计的用它代理很多静态的资源、视频、图片等都是很好的选择。

mac上的配置

安装

brew install nginx

启动

(base) ~|⇒ brew services start nginx
==> Successfully started `nginx` (label: homebrew.mxcl.nginx)

启动了就是这个样子就可以看到默认的访问页面。

nginx的配置文件也是超级不好找的不过适应了就好因为homebrew已经提前帮我们规划好了。

# 配置文件
/opt/homebrew/etc/nginx

nginx的默认的配置文件都在这里

(base) nginx|stable ⇒ ls
fastcgi.conf           fastcgi_params.default mime.types             nginx.conf.default     scgi_params.default    win-utf
fastcgi.conf.default   koi-utf                mime.types.default     nginx.conf_cpy         uwsgi_params
fastcgi_params         koi-win                nginx.conf             scgi_params            uwsgi_params.default

重头戏

说了这么久我要的静态资源服务器呢安排上。在开始之前我们需要做一下的准备

  1. 开放的端口号是什么我这里就8080了免得以后别的服务端口占用了
  2. 挂载的路径 我就选~/imgs吧放了一些我的typora的笔记截图

好的现在资源规划完成了我们开始整。

配置的过程

cp nginx.conf nginx.conf_bck
vim nginx.conf

我就直接扔出来具体的配置了每个配置都有详细的解释

     location /downloads {
         #转到的Nginx文件目录
         alias /xxx/files;
         #打开目录浏览功能
         autoindex on;
         #默认为on显示出文件的确切大小单位是bytes
         #显示出文件的大概大小单位是kB或者MB或者GB
         autoindex_exact_size off;
         #默认为off显示的文件时间为GMT时间。
         #改为on后显示的文件时间为文件的服务器时间
         autoindex_localtime on;
         #让浏览器不保存临时文件
         add_header Cache-Control no-store;
         #避免中文乱码
         charset utf-8,gbk;
         #希望请求文件是下载而不是显示内容
         #add_header Content-Disposition attachment; 
     }

nginx重新加载配置

/opt/homebrew/bin/nginx -s reload

访问地址http://127.0.0.1:8080/downloads 即可看到效果

点击文件就可以实现类似于文件预览的效果。

怎么样子是不是很好用直接一个nice

服务关闭

作为节省资源型的猿我喜欢不用的时候关闭软件来看看搭载了brew的包管理器如何关闭服务。

(base) nginx|stable ⇒ brew services stop nginx
Stopping `nginx`... (might take a while)
==> Successfully stopped `nginx` (label: homebrew.mxcl.nginx)

检查一下

ps -ef | grep nginx | grep -v grep

OK 以上就是brew nginx配置静态资源服务器的全部过程了。伙伴们也记得关注这样就不会错过很多干货了。

阿里云国内75折 回扣 微信号:monov8
阿里云国际,腾讯云国际,低至75折。AWS 93折 免费开户实名账号 代冲值 优惠多多 微信号:monov8 飞机:@monov6
标签: nginx服务器