一文学会搭建 nginx 服务器

 1、nginx 简介及设计思想

         nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP / POP3 / SMTP 服务。

        nginx 是由多个进程同时工作的,有一个主进程和多个工作进程组成,主进程接受客户端的请求,转给工作进程处理;当进行reload命令重新加载配置时,主进程会等待工作进程完成工作后再结束工作进程,然后基于新的配置重新创建工作进程,避免客户端请求丢失的情况。

2、nginx 下载与安装
2.1、下载安装包(nginx: download)
# 1、下载的安装包:
nginx-1.23.3.tar.gz
# 2、解压: 
tar -zxvf nginx-1.23.3.tar.gz -C /opt
2.2、进入解压目录进行编译安装

        在安装 nginx 源码编译的时候需要下载依赖(gcc, pcre, pcre-devel, zlib, zlib-devel),当使用 yum -y install 命令安装 devel 包时,会首先安装非 devel 包,因此,在同时需要两个包时,可以省略非 devel 包的安装。

# 1、进行编译(--prefix: 指定安装目录, --with-: 允许使用相关功能,通过--add-module添加外部模块(还有其他模块,当用到的时候重新编译即可))
./configure --prefix=/usr/local/nginx --with-http_ssl_module --add-module=/root/**
# 2、安装
make
make install
# 或者两行命令合并成一行: make && make install
# 进入安装目录/usr/local/nginx/sbin,验证是否安装成功
./nginx -v
3、nginx 常用操作命令
# 1、启动(进入安装目录)
./nginx
# 2、快速停止
./nginx -s stop
# 3优雅关闭,在退出前完成已经接受的请求
./nginx -s quit
# 4、更改配置文件,重新加载配置运行
./nginx -s reload
# 5、重新打开日志文件(当手动更改日志文件名,重新生成配置文件中的定义名称的日志)
nginx -s reopen
# 6、指定配置文件启动
nginx -c /特定目录/nginx.conf
# 7、杀死进程
kill nginx的主进程id    # 方式一
killall nginx         # 方式二
# 8、检测当前的配置文件是否正常
nginx -t 
# 9、检测指定的配置文件是否正常
nginx -t -c /特定目录/nginx.conf
4、nginx.conf 基础配置文件 

        配置文件主要有main、events、http、server、location几个部分组成。

# 指定用户
#user  nobody;
# 工作进程数(物理CPU内核数或者内核数两倍)
worker_processes  1;
work_rlimit_nofile; # 用于设置最多打开文件数量

events {
    # 每个worker进程可以创建多少个连接
    worker_connections  1024;
    #使用epoll模型
    use epoll;
    # 是否允许一个工作进程响应多个请求
    multi_accept on;
}
http {
	
	# include引入子配置文件,mime.types定义文件格式对应渲染方式
    include       mime.types;
    #如果文件类型不包含在mine.types中,使用默认类型(application/octet-stream: 任意的二进制数据)
    default_type  application/octet-stream;
    #开启高效文件传输模式
    sendfile on;  
    #连接超时 时间定义 默认秒 默认65秒
    keepalive_timeout 60;
    #读取客户端请求头数据的超时时间 默认秒 默认60秒
    client_header_timeout 15;    
    #读取客户端请求主体的超时时间 默认秒 默认60秒
    client_body_timeout 15; 
    #响应客户端的超时时间 默认秒 默认60秒
    send_timeout 25;
    #上传文件的大小限制  默认1m
    client_max_body_size 8m;

    server {
		# 监听端口号
        listen       80;
		# 主机名/域名,可以配置多个,可以完整匹配/正则匹配/通配符匹配
        server_name  localhost localhost1;
        location / {
            root   html;
            index  index.html index.htm;
        }   
    }
}
5、验证 nginx 服务正常
# 1、进入 /usr/local/nginx/sbin 目录下,执行
./nginx
# 2、访问 localhost

如果在浏览器中输入 localhost:80 / localhost 出现一下界面,表示 nginx 已经可以正常使用了。

一文学会搭建 nginx 服务器_第1张图片

总结:本文只介绍 nginx 的入门级别的介绍,帮助初学者快速搭建 nginx 服务器,更多高级配置和使用参考 nginx 高级用法博客。

        本人是一个从小白自学计算机技术,对运维、后端、各种中间件技术、大数据等有一定的学习心得,想获取自学总结资料(pdf版本)或者希望共同学习,关注微信公众号:上了年纪的小男孩。后台回复相应技术名称/技术点即可获得。(本人学习宗旨:学会了就要免费分享)

一文学会搭建 nginx 服务器_第2张图片

你可能感兴趣的:(运维,linux,服务器,nginx)