从零开始的Nginx详解(1)【Nginx-配置文件及环境搭建】

在这里插入图片描述
演示环境:
系统版本:CentOS Linux release 7.7.1908 (Core)
nginx版本:nginx/1.16.1
当然讲解还是官方最棒英语和俄语大佬请点击这里移步官网

一、Nginx简介

1.Nginx是什么?

Nginx是一个高性能的HTTP和反向代理服务器,也是一个IMAP/POP3/SMTP服务器,Nginx可以作为一个Web服务器进行网站的发布,也可以作为反向代理服务器进行负载均衡的实现,常见的Web服务器:Tomcat、Apache、Nginx、Weblogic等

2.Nginx特点

占用资源少,并发能力强。

二、Nginx环境搭建

1.Nginx安装

我们这里使用最简单的安装方式:yum安装
当然还有比较麻烦的安装方法:源码安装(这里我就不提供教程了,有兴趣点击这里)

2.Nginx的常见目录

  • 使用 whereis nginx 命令可以查看关于nginx的目录
    常用文件目录
  • 执行目录:/usr/sbin/nginx
  • 模块所在目录:/usr/lib64/nginx/modules
  • 配置文件:/etc/nginx/nginx.conf
  • 日志文件:/var/log/nginx
  • 虚拟主机目录:/usr/share/nginx/html

3.Nginx相关命令

启动nginx:nginx
停止nginx:nginx -s stop
重启nginx:nginx -s reload
使用指定配置文件启动nginx:nginx -c 文件路径
检查nginx配置文件:nginx -t
查看nginx版本信息:nginx -v
查看所有端口占用情况:netstat -antp | grep :
杀掉全部nginx进程:killall -9 nginx
注意:systemctl 命令重启,停止nginx会出现错误。

三、Nginx主配置文件详解

 1 # For more information on configuration, see:
  2 #   * Official English Documentation: http://nginx.org/en/docs/
  3 #   * Official Russian Documentation: http://nginx.org/ru/docs/
  4 
  5 user nginx;
  #运行nginx的用户
  6 worker_processes auto;
  #工作进程数量,建议不要修改,保持自动
  7 error_log /var/log/nginx/error.log; 
  #错误日志文件的输出位置和输出级别
  8 pid /run/nginx.pid;
  #pid文件位置
  9 
 10 # Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
 11 include /usr/share/nginx/modules/*.conf;
 12 
 13 events {
 14     worker_connections 1024;
 		#每个进程的最大连接数,默认1024
 15 }
 16 
 17 http {
 	#HTTP配置
 18     log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
 19                       '$status $body_bytes_sent "$http_refer er" '
 20                       '"$http_user_agent" "$http_x_forwarded_for"';
 21 #日志的格式
 22     access_log  /var/log/nginx/access.log  main;
 #访问日志文件的位置
 23 
 24     sendfile            on;
 #是否调用sendfile函数来输出文件
 25     tcp_nopush          on;
 26     tcp_nodelay         on;
 #是否启用nodelay算法
 27     keepalive_timeout   65;
 #连接超时时间
 28     types_hash_max_size 2048;
 29 
 30     include             /etc/nginx/mime.types;
 #支持的文件类型
 31     default_type        application/octet-stream;
 #默认文件类型
 32 
 33     # Load modular configuration files from the /etc/nginx/conf.d directory.
 # 从/etc/nginx/conf.d目录加载模块化配置文件
 34     # See http://nginx.org/en/docs/ngx_core_module.html#include
 35     # for more information.
 36     include /etc/nginx/conf.d/*.conf;
 #引入外部配置文件,包含虚拟主机配置
 37 
 #以下为虚拟主机配置
 38     server {
 39         listen       80 default_server;
 #监听端口 80
 40         listen       [::]:80 default_server;
 41         server_name  _;
 #主机域名
 42         root         /usr/share/nginx/html;
# 默认页面路径
 43 
 44         # Load configuration files for the default server block.
 45         include /etc/nginx/default.d/*.conf;
 46 
 47         location / {
 48         }
 49 
 50         error_page 404 /404.html;
 51             location = /40x.html {
 52         }
 53 #404页面
 54         error_page 500 502 503 504 /50x.html;
 #错误的反馈页面
 55             location = /50x.html {
 56         }
 57     }
 58 
 #服务器的htttps设置
 59 # Settings for a TLS enabled server.
 # 启用TLS的服务器的设置
 60 #
 61 #    server {
 62 #        listen       443 ssl http2 default_server;
 63 #        listen       [::]:443 ssl http2 default_server;
  64 #        server_name  _;
 65 #        root         /usr/share/nginx/html;
 66 #
 67 #        ssl_certificate "/etc/pki/nginx/server.crt";
 #ssl证书路径
 68 #        ssl_certificate_key "/etc/pki/nginx/private/server.key";
 #ssl证书key
 69 #        ssl_session_cache shared:SSL:1m;
 70 #        ssl_session_timeout  10m;
 71 #        ssl_ciphers HIGH:!aNULL:!MD5;
 72 #        ssl_prefer_server_ciphers on;
 73 #
 74 #        # Load configuration files for the default server block.
 #加载默认服务器块的配置文件
 75 #        include /etc/nginx/default.d/*.conf;
 76 #
 # 一下全为错误页面配置
 77 #        location / {
 78 #        }
 79 #
 80 #        error_page 404 /404.html;
 81 #            location = /40x.html {
 82 #        }
 83 #
 84 #        error_page 500 502 503 504 /50x.html;
 85 #            location = /50x.html {
 86 #        }
 87 #    }
 88 
 89 }
 90 

四、Nginx相关文章链接

Nginx环境搭建
HTTP服务器
HTTPS服务详解
反向代理
负载均衡
动静分离&高并发处理

(1)Nginx环境搭建(本期)
(2)HTTP服务器
(3)HTTPS服务配置详解
(4)反向代理
(5)负载均衡
(6)动静分离&高并发处理

原文地址:https://www.cnblogs.com/tianyao2020/p/12755234.html