Nginx安装与文件服务器实现

本文详细介绍了Nginx的安装方法,包括Windows下的简易安装、Linux(RPM和YUM)安装,以及源码包安装所需的步骤和配置。还演示了如何使用Nginx实现一个简易文件服务器。
摘要由CSDN通过智能技术生成

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. 效果

  • 8
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值