Nginx安装与文件服务器实现

2023-12-25 15:48:41

1. 概述

Nginx是一个高性能的反向代理和web服务器软件,特点是系统资源消耗低、高性能、高并发、扩展性好。一个进程可以处理多个请求,并且是非阻塞式响应。

  • windows安装
  • 安装包下载地址:https://nginx.org/en/download.html
  • 下载之后解压运行nginx.exe文件即可。

  • Linux安装

2. rpm包安装:

2.1. rpm包下载地址:

http://nginx.org/packages/rhel/7/x86_64/RPMS/

[root@master ~]# wget  http://nginx.org/packages/rhel/7/x86_64/RPMS/nginx-1.10.0-1.el7.ngx.x86_64.rpm
[root@master ~]# rpm -ivh nginx-1.10.0-1.el7.ngx.x86_64.rpm
[root@master ~]# nginx
[root@master ~]# nginx -v
2.2. 安装验证

2.3. 命令扩展

命令参数

含义

nginx

启动

nginx -V

查看当前版本及编译配置信息

nginx -t

检查配置文件语法是否正确

nginx -s stop

直接关闭worker子进程

nginx -s quit

等待worker子进程正确处理完请求后关闭

nginx -s reload

重读配置文件

3. yum安装:

3.1. 安装
[root@master ~]# rpm -Uvh  http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
[root@master ~]# yum -y install nginx
[root@master ~]# systemctl start nginx
[root@master ~]# systemctl status nginx

3.2. 命令扩展

命令参数

含义

systemctl start nginx / service nginx start

启动nginx

systemctl stop nginx / service nginx stop

停止nginx

service nginx reload

重载nginx

ps -ef | grep nginx

查看进程

netstat -anpl | grep nginx

查看服务端口

3.3. 存储路径

路径

含义

/etc/nginx/nginx.conf

默认配置文件的路径

/usr/share/nginx/html

网站默认存放目录

/usr/sbin/nginx

二进制文件存放路径

4. 源码包安装:

4.1. 需要手动安装依赖
yum -y install gcc pcre-devel zlib-devel openssl openssl-devel
4.2. 下载安装包

下载地址:http://nginx.org/en/download.html

4.3. 安装
[root@master ~]# wget http://nginx.org/download/nginx-1.24.0.tar.gz
[root@master ~]# tar -zxvf nginx-1.24.0.tar.gz
[root@master nginx-1.24.0]# ./configure --prefix=/usr/local/nginx  #安装到指定位置
[root@master nginx-1.24.0]# make && make install
[root@master ~]# /usr/local/nginx/sbin/nginx

5. 简易文件服务器实现

5.1. 修改Nginx配置文件

vim /usr/local/nginx/conf/nginx.conf

    server {
        listen 8085;
        # 域名或者IP
        server_name localhost;  
        
        # 正常显示中文
        charset gbk,utf-8;

        # 打开autoindex功能,以/结尾的请求
        autoindex on;
        
        # 显示文件的大小,
        # on:以字节显示
        # off:人性化显示,文件过大会显示为mb或gb
        autoindex_exact_size off;
        
        # 以哪种格式返回:html | xml | json | jsonp
        # 默认值:autoindex_format html
        autoindex_format html;
        
        # 显示时间格式
        # on: 12-Jul-2019 10:11(当前时区)
        # off: 12-Jul-2019 02:11(0时区,GMT)
        autoindex_localtime on;       

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

            location / {
        root /data/files/;
        # 判断文件是否以下这些方式结尾的,是的话可以下载
        if ($request_filename ~* ^.*?.(txt|doc|pdf|rar|gz|zip|docx|exe|xlsx|ppt|pptx)$){
            add_header Content-Disposition attachment;
            }
        }
5.2. 准备下载文件
[root@master ~]# echo aaa > /data/files/a.txt
5.3. 重新加载Nginx服务器
[root@master ~]# /usr/local/nginx/sbin/nginx -s reload
5.4. 效果

文章来源:https://blog.csdn.net/m0_60169980/article/details/135148835
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。