什么是Nginx?Nginx作用?

ginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。2011年6月1日,nginx 1.0.4发布。

其特点是占有内存少,并发能力强,事实上nginx的并发能力在同类型的网页服务器中表现较好,中国大陆使用nginx网站用户有:百度、京东、新浪、网易、腾讯、淘宝等。在全球活跃的网站中有12.18%的使用比率,大约为2220万个网站。

Nginx 是一个安装非常的简单、配置文件非常简洁(还能够支持perl语法)、Bug非常少的服务。Nginx 启动特别容易,并且几乎可以做到7*24不间断运行,即使运行数个月也不需要重新启动。你还能够不间断服务的情况下进行软件版本的升级。

Nginx代码完全用C语言从头写成。官方数据测试表明能够支持高达 50,000 个并发连接数的响应。

Nginx作用?

Http代理,反向代理:作为web服务器最常用的功能之一,尤其是反向代理。

Nginx提供的负载均衡策略有2种:内置策略和扩展策略。内置策略为轮询,加权轮询,Ip hash。扩展策略,就天马行空,只有你想不到的没有他做不到的。

2、启动nginx

有很多种方法启动nginx

(1)直接双击nginx.exe,双击后一个黑色的弹窗一闪而过

(2)打开cmd命令窗口,切换到nginx解压目录下,输入命令 nginx.exe ,回车即可

3、检查nginx是否启动成功

直接在浏览器地址栏输入网址 http://localhost:80 回车,出现以下页面说明启动成功!

4、配置监听

nginx的配置文件是conf目录下的nginx.conf,默认配置的nginx监听的端口为80,如果80端口被占用可以修改为未被占用的端口即可。

当我们修改了nginx的配置文件nginx.conf 时,不需要关闭nginx后重新启动nginx,只需要执行命令 nginx -s reload 即可让改动生效

5、关闭nginx

如果使用cmd命令窗口启动nginx, 关闭cmd窗口是不能结束nginx进程的,可使用两种方法关闭nginx

(1)输入nginx命令 nginx -s stop(快速停止nginx) 或 nginx -s quit(完整有序的停止nginx)

(2)使用taskkill taskkill /f /t /im nginx.exe

1、taskkill是用来终止进程的,
2、/f是强制终止 .
3、/t终止指定的进程和任何由此启动的子进程。
4、/im示指定的进程名称 .

linux下安装
1、安装gcc

安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:

1、yum install gcc-c++
2、PCRE pcre-devel 安装

PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:

1、yum install -y pcre pcre-devel
3、zlib 安装

zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。

1、yum install -y zlib zlib-devel
4、OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。

1、yum install -y openssl openssl-devel

5、下载安装包

手动下载.tar.gz安装包,地址:https://nginx.org/en/download.html

下载完毕上传到服务器上 /root

6、解压

1、tar -zxvf nginx-1.18.0.tar.gz
2、cd nginx-1.18.0

7、配置

使用默认配置,在nginx根目录下执行

./configure
make
make install
1
2
3
查找安装路径: whereis nginx

Nginx常用命令
1、cd /usr/local/nginx/sbin/
2、./nginx  启动
3、./nginx -s stop  停止
4、./nginx -s quit  安全退出
5、./nginx -s reload  重新加载配置文件
6、ps aux|grep nginx  查看nginx进程
启动成功访问 服务器ip:80

注意:如何连接不上,检查阿里云安全组是否开放端口,或者服务器防火墙是否开放端口!
相关命令:

# 开启
service firewalld start
# 重启
service firewalld restart
# 关闭
service firewalld stop
# 查看防火墙规则
firewall-cmd --list-all
# 查询端口是否开放
firewall-cmd --query-port=8080/tcp
# 开放80端口
firewall-cmd --permanent --add-port=80/tcp
# 移除端口
firewall-cmd --permanent --remove-port=8080/tcp

#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload# 参数解释
1、firwall-cmd:是Linux提供的操作firewall的一个工具;
2、--permanent:表示设置为持久;
3、--add-port:标识添加的端口;

演示

upstream lb{server 127.0.0.1:8080 weight=1;server 127.0.0.1:8081 weight=1;
}location / {proxy_pass http://lb;
}

Nginx最新教程通俗易懂相关推荐

  1. 【学相伴】Nginx最新教程通俗易懂-狂神说

    Nginx - 学相伴 分享人:秦疆(遇见狂神说) 公司产品出现瓶颈? 我们公司项目刚刚上线的时候,并发量小,用户使用的少,所以在低并发的情况下,一个jar包启动应用就够了,然后内部tomcat返回内 ...

  2. 【笔记】【git】【狂神说Java】Git最新教程通俗易懂 -学习笔记

    前言 学习视频:[狂神说Java]Git最新教程通俗易懂 感谢狂神!!! 此笔记用于记录本人在学习中还有不懂以及值得注意的地方.以方便日后的工作与学习. 笔记中有些个人理解后整理的笔记,可能有所偏差, ...

  3. Git最新教程通俗易懂----狂神说Java -- ---学习笔记

    [狂神说Java]Git最新教程通俗易懂 https://www.bilibili.com/video/BV1FE411P7B3 P1.前言之版本控制 06:12 P2.Git和SVN的区别 07:3 ...

  4. 【狂神说Java】Git最新教程通俗易懂

    目录 狂神视频地址 1.版本控制 1.1什么是版本控制 1.2.常见的版本控制工具 1.3.版本控制分类 2.聊聊git的历史 3.git环境配置 3.1软件下载 3.2启动git 3.3常用Linu ...

  5. 狂神说——JavaScript最新教程通俗易懂

    参考资料 文章目录 01 练练JavaScript这个东西 02 基本使用及HelloWorld 03 浏览器控制台使用 04 数据类型快速浏览 05 严格检查模式strict 06 字符串类型详解 ...

  6. 2022年5月4日 【狂神说Java】MySQL最新教程通俗易懂5 数据库权限管理,备份与三大范式

    8. 数据库的权限管理和备份 8.1 用户管理 可视化操作 SQL命令操作 用户表: mysql.user 本质:对这张表进行增删改查 -- 创建用户 create user 用户名 identifi ...

  7. Docker02 狂神Docker视频学习笔记 :【狂神说Java 哔哩哔哩】Docker最新超详细版教程通俗易懂

    目录 0. 视频源 0. 学习网址 基础篇 1. Docker概述 1.1 Docker为什么出现? 1.2 Docker历史 1.3 Docker能干什么 2. Docker安装 2.1 Docke ...

  8. Docker超详细版教程通俗易懂 -之- 入门篇

    前言 学习Docker,你可以熟练的操作命令,能够把你的项目构建成Docker镜像! 是后端开发人员必备的技能!下面是自己的学习笔记,希望能帮助到需要的你! 特别感谢哔哩哔哩狂神:[狂神说Java]D ...

  9. Docker超详细版教程通俗易懂 -之- 进阶篇

    此刻的你,已成功入门Docker.让我们一起继续深造(内容不难,很有意思) 容器数据卷 什么是容器数据卷 docker的理念回顾:将应用和环境打包成一个镜像! 数据?如果数据都在容器中,那么我们容器删 ...

最新文章

  1. 面试官:你说你熟悉jvm?那你讲一下并发的可达性分析
  2. POJ3322滚箱子游戏(不错)
  3. QML基础类型之font
  4. Ubuntu Core 给物联网提供更多安全支持
  5. Apache Spark Job的剖析
  6. 全网最全的Numpy开发入门教程(详细案例版)
  7. PingCAP联合创始人兼CTO黄东旭:致力于打造全球最好的分布式数据库
  8. E人E本的android突破与行业走向
  9. WINDOWS上svn服务器自动部署
  10. rgb sw 线主板接口在哪_火力升级 华硕B460重炮手PRO主板豪横上市_搜狐汽车
  11. php 显示连接数据库失败,php数据库连接失败的原因及解决办法
  12. java程序假死_分析一个常见的java多线程通信问题(假死现象)
  13. 【quasi-maximum likelihood decoder】一种有效的PSK信号准最大似然译码器matlab性能仿真
  14. 不在被虐中成长就在被虐中死亡
  15. Linux常用基本命令详解(二)-------磁盘分区和磁盘管理类命令
  16. js:身份证号码脱敏(对中间11位号码用*号替换)
  17. java 图像合成加相框_合成走进相框人物照片效果的PS教程
  18. 【PP主数据】工艺路线介绍
  19. python网络爬虫 百度网盘_百度网盘爬虫(如何爬取百度网盘)
  20. 【四分之四拍】四分之四拍每拍实际占多长时间?【用最理科的方式解释音乐里的这些玩意,不对之处欢迎指正】

热门文章

  1. mdict.cn的安卓安装包不能找到mdx文件问题解决方法
  2. 超链接之锚点的使用(页面内段落之间的跳转和不同页面之间的跳转)
  3. python数据分析培训内容可以_Python数据分析师
  4. SEO网站优化步骤和技巧小结
  5. html音视频app制作,6款视频制作APP,让你成为短视频高手!
  6. 文本检测时对图片进行方向矫正
  7. iOS开发- 文件共享 利用iTunes导入文件 并且显示已有文件
  8. halcon中放大图片
  9. 扇贝编程python广告演员_‎扇贝编程-人人能学会的python课 az App Store-ban
  10. VSCode STM32跨平台开发环境搭建