Nginx从入门到实践,使用详解

1.Nginx介绍

Nginx 是开源、高性能、高可靠的 Web 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24
小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热更新。

2.使用场景

*静态资源服务,通过本地文件系统提供服务
*反向代理服务,延伸出包括缓存、负载均衡等
*API 服务,OpenResty 

3.Linux环境下安装Nginx

前言:基于Centos 7下安装配置Nginx操作实践记录整理
配置EPEL源
sudo yum install -y epel-release
sudo yum -y update
安装Nginx
sudo yum install -y nginx
结语
安装成功后,默认的网站目录为: /usr/share/nginx/html(静态资源一般放到该目录下)

默认的配置文件为:/etc/nginx/nginx.conf

自定义配置文件目录为: /etc/nginx/conf.d/
常用命令
查看nginx运行状态:systemctl status nginx
开机自启动nginx:systemctl enable nginx
关闭开机自启动nginx:systemctl disable nginx
启动nginx:systemctl start nginx
停止nginx:systemctl stop nginx
重启nginx:systemctl restart nginx
重新加载配置文件:nginx -s reload
防火墙
**如果你的服务器打开了防火墙,你需要打开80端口。如果你的服务器是阿里云的,则需要把端口号加入到安全组**
开启防火墙:systemctl start firewalld
关闭防火墙:systemctl stop firewalld
重启防火墙:systemctl restart firewalld
防火墙开启状态:systemctl status firewalld
查看单个端口是否开放:firewall-cmd --query-port=端口号/tcp
新增开放端口(permanent表示永久打开,不加是临时打开重启之后失效)
firewall-cmd --add-port=端口号/tcp --permanent  或
firewall-cmd --permanent --zone=public --add-port=端口号/tcp
移除开放端口:firewall-cmd --remove-port=端口号/tcp --permanent
查看开放得端口列表:firewall-cmd --list-ports
nginx.conf典型配置
    user  nginx;                        # 运行用户,默认即是nginx,可以不进行设置
    worker_processes  1;                # Nginx 进程数,一般设置为和 CPU 核数一样
    error_log  /var/log/nginx/error.log warn;   # Nginx 的错误日志存放目录
    pid        /var/run/nginx.pid;      # Nginx 服务启动时的 pid 存放位置

    events {
    use epoll;     # 使用epoll的I/O模型(如果你不知道Nginx该使用哪种轮询方法,会自动选择一个最适合你操作系统的)
    worker_connections 1024;   # 每个进程允许最大并发数
    }

    http {   # 配置使用最频繁的部分,代理、缓存、日志定义等绝大多数功能和第三方模块的配置都在这里设置
    # 设置日志模式
    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /var/log/nginx/access.log  main;   # Nginx访问日志存放位置

    sendfile            on;   # 开启高效传输模式
    tcp_nopush          on;   # 减少网络报文段的数量
    tcp_nodelay         on;
    keepalive_timeout   65;   # 保持连接的时间,也叫超时时间,单位秒
    types_hash_max_size 2048;

    include             /etc/nginx/mime.types;      # 文件扩展名与类型映射表
    default_type        application/octet-stream;   # 默认文件类型

    include /etc/nginx/conf.d/*.conf;   # 加载子配置项
    
    server {
    	listen       80;       # 配置监听的端口
    	server_name  localhost;    # 配置的域名
    	
    	location / {
    		root   /usr/share/nginx/html;  # 网站根目录
    		index  index.html index.htm;   # 默认首页文件
    		deny 172.168.22.11;   # 禁止访问的ip地址,可以为all
    		allow 172.168.33.44;# 允许访问的ip地址,可以为all
    	}
    	
    	error_page 500 502 503 504 /50x.html;  # 默认50x对应的访问页面
    	error_page 400 404 error.html;   # 同上
    }
    }
语法规则
配置文件由指令与指令块构成;
每条指令以 ; 分号结尾,指令与参数间以空格符号分隔;
指令块以 {} 大括号将多条指令组织在一起;
include 语句允许组合多个配置文件以提升可维护性;
使用 # 符号添加注释,提高可读性;
使用 $ 符号使用变量;
部分指令的参数支持正则表达式;

4.反向代理配置

5.静态资源配置

4.参考文献

	(https://developer.aliyun.com/article/699966)
	(https://mp.weixin.qq.com/s/hafErlto-1N6ypYfOVIGBQ)
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值