CentOS8 下Nginx使用教程
1、nginx安装
dnf install nginx -y
2、nginx常用目录
nginx.conf目录:/etc/nginx.nginx.conf
nginx启动目录:/usr/sbin/nginx
3、nginx热部署
所谓热部署,就是配置文件nginx.conf修改后,不需要stop Nginx,不需要中断请求,就能让配置文件生效!
/usr/sbin/nginx -s reload
4、配置nginx 访问资源目录
修改 nginx.conf 配置文件,在service标签内部加入下面的location,通过访问 ip地址:端口/source 就能访问 /home/source 目录了。
location /source {
root /home;
autoindex:on;
}
还可以有如下写法:
location /source {
alias /home/source;
autoindex:on;
}
5、反向代理
听着反向代理是不是很牛逼的事,实际上很容易理解:
正向代理:A要访问C的地址,但是由于网络或是墙的问题,A不能直接访问到C,但是呢有个B可以访问C,A也可以访问B,那么A在访问C的时候通过B代理,这就是正向代理。
A ---/---> C ; A ------> B ; B ------> C ;那么 A ------> B ------> C
反向代理:A要访问C的地址,但是由于网络或安全的问题,A不能直接访问到C,但是呢有个B可以访问C,A也可以访问B,那么A在访问C的时候通过B代理,这就是正向代理。
A ---/---> C ; A ------> B ; B ------> C ;那么 A ------> B ------> C
通过上面的示例是不是觉得 正向代理和反向代理一样?
对,确实原理一样,但是有有个明显的差别就是:
在正向代理中 A访问C,A是明确知道C的地址(要想访问www.google.com)。B相当于是访问的介质。
在反向代理中A访问C,A只知道B的地址不知道C的地址,当A访问B的时候由B请求C之后把请求结果返回给A。
配置方法很简单:把root换成proxy_pass , 路径换成网络地址。
location /WeChatApp {
proxy_pass http://localhost:8878/;
}
6、负载均衡
复制均衡听着是不是也很NB,其实原理也非常简单,因为由反向代理,A只用访问B就行了,那么至于B要访问多少个C那是可以配置的:
比如说 由于用户量激增,需要新增服务器来部署应用应对并发访问,这时用户访问的还是B地址,只有配置B把请求分发给对台服务器应用,就能应对并发操作,这就是负载均衡。
在server标签外面添加:
upstream myserver{
server http://192.168.1.40:8080;
server http://192.168.1.45:8480;
}
在server标签内添加:
location /WeChatApp {
proxy_pass http://myserver;
}
这样就把请求分发到不同的应用去处理了。
7、动静分离
牛逼的名称又来了,动静分离就是把通过反向代理,针对不同的资源配置不同的访问方式。
比如说查询用户列表需要查询数据库,需要组织返回的数据结构,这就是一个动态请求。
比如要访问图片、pdf文件...这些静态资源这一个静态请求。
那么针对不同的接口做不同的配置就实现了动静分离:
# 访问 动态资源
location /WeChatApp {
proxy_pass http://localhost:8878/;
} #访问 /home/image 静态资源目录
location /image {
root /home;
autoindex:on;
}
8、高可用的集群
通过nginx做代理 进行负载均衡就会出现一个问题,就是nginx服务器挂掉之后,它代理的接口地址都不能访问了。
为了解决这个问题就需要配置一个高可以的集群,原理很简单,就是在另一台服务器其上部署一个相同配置的nginx服务器,这样主nginx服务器挂掉之后,副的nginx服务器补上。
主流方案是Keepalived+Nginx实现双机热备。
CentOS8 下Nginx使用教程的更多相关文章
- linux下Nginx服务器安装教程
序:Nginx服务器安装总结而已,不是教程. 安装的过程中出现了一些问题,原因我的云主机是纯净版,所以很多依赖包都没有.其中安装过程中就发现perl库缺少和openssl库缺少,因此我手动安装的这两款 ...
- centos7.2下nginx安装教程
1.准备工作 1)关闭iptables 关闭操作 iptables -t nat -F 查看操作 iptables -t nat -L 2)关闭selinux 查看操作 setenforce 关闭操作 ...
- Linux下nginx编译安装教程和编译参数详解
这篇文章主要介绍了Linux下nginx编译安装教程和编译参数详解,需要的朋友可以参考下 一.必要软件准备1.安装pcre 为了支持rewrite功能,我们需要安装pcre 复制代码代码如下: # y ...
- Windows下Nginx配置SSL实现Https访问(包含证书生成)
Vincent.李 Windows下Nginx配置SSL实现Https访问(包含证书生成) Windows下Nginx配置SSL实现Https访问(包含证书生成) 首先要说明为什么要实现https ...
- Windows下Nginx Virtual Host多站点配置详解
Windows下Nginx Virtual Host多站点配置详解 此教程适用于Windows系统已经配置好Nginx+Php+Mysql环境的同学. 如果您还未搭建WNMP环境,请查看 window ...
- Linux下 nginx + 最新版php5.5 安装配置详解
1.nginx的安装: 首先nginx的安装需要依赖最基础的三个包,这里面我们不设计更多的扩展模块,只是安装最基础的三个包, zlib 此包主要是对http内容进行gzip压缩,减少网络传输流量 PC ...
- Nginx教程(一) Nginx入门教程
Nginx教程(一) Nginx入门教程 1 Nginx入门教程 Nginx是一款轻量级的Web服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like协议下发行.由 ...
- [Linux] 一个前端必会的 Nginx 免费教程-在虚拟机中用deepin测试
原文技术胖的 nginx 技术胖 专注于前端开发 deepin Linux Deepin 是一个基于 DEB 包管理的一个独立操作系统,和那些 Ubuntu(下个大版本是基于 debian 开发) 的 ...
- linux下nginx【反向代理】配置【负载均衡】配置
nginx 可以配置多个端口: 1.10088端口 配置反向代理,消除跨域问题. 2.10087端口 配置ip_hash模式的负载均衡,ip_hash可以绕开解决session共享的问题. nginx ...
随机推荐
- LeetCode 019 Remove Nth Node From End of List
题目描述:Remove Nth Node From End of List Given a linked list, remove the nth node from the end of list ...
- C语言printf()函数的格式化字符串
原文链接:https://www.runoob.com/cprogramming/c-function-printf.html#include<stdio.h> #include<s ...
- JZOJ 【NOIP2016提高A组集训第16场11.15】SJR的直线
JZOJ [NOIP2016提高A组集训第16场11.15]SJR的直线 题目 Description Input Output Sample Input 6 0 1 0 -5 3 0 -5 -2 2 ...
- 树莓派自动连接WiFi
使用sudo raspi-config配置好第一个wifi 然后只需要修改一个文件sudo nano /etc/wpa_supplicant/wpa_supplicant.conf 内容如下: ctr ...
- Boost随机库的简单使用:Boost.Random(STL通用)
文章目录 文章目录 文章内容介绍 Boost随机库的简单使用 生成一个随机的整数 生成一个区间的平均概率随机数 按概率生成一个区间的随机整数 一些经典的分布 与STL的对比 Ref 文章内容介绍 Bo ...
- 对称加密之---AES加密
工作中常会需要让数据传输前进行加密处理.这次用到的是AES加密.AES加密中,需要注意到坑还是挺多的.对AES也进行了一番了解,发现里面的东西真的是注意的太多了.今天只是整理了一种简单的加密格式,工作 ...
- nodejs事件和事件循环简介
目录 简介 事件 事件循环 事件循环的阻塞 事件循环举例 栈和消息队列 作业队列和promise process.nextTick() setImmediate() setInterval() 简介 ...
- 第15.24节 PyQt(Python+Qt)入门学习:Model/View架构中QTableView的作用及属性详解
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python博客地址 一.概述 在Designer的部件栏Item Views中提供了PyQt和Qt已经实现好的table ...
- 在Centos7下docker配置自动化环境镜像(python3.7+selenium 3.11+firefox 62+geckodriver 0.21)
最近在学习Docker,准备做自动化测试代码集成的功能.如下文章的前提是已经安装好linux系统,且成功安装好Docker. 接下来我会按步骤一步一步的对自动化需要的一些环境进行安装,如果没有特别说明 ...
- 威联通(NAS)搭建个人音乐中心
我为什么要自己搭建音乐服务 曾记得早些年,音乐是可以随便在线听,随便下载的,没有付费这么一说的(背后是音乐平台提供的版权支持).我们听音乐也就可以很随意,但是这几年,音乐的版权开始管理的严禁,音乐没地 ...