Nginx学习经验总结

举报
多米诺的古牌 发表于 2021/12/28 00:05:05 2021/12/28
【摘要】 1.简介Nginx是一个高性能的HTTP和反向代web理服务器,相应更快,占用内存比较小,并发能力强,官网称可以处理五万个并发连接请求。2.作用2.1 反向代理正向代理是代理客户端的,帮助客户端去请求服务端;而反向代理是代理服务端的,当客户端请求时可以无感知的访问服务器资源以及让服务更好的部署上线。2.2 负载均衡负载均衡的策略有两种:一种是扩展策略,一种是内置策略。内置策略为轮询、加权轮询...

1.简介

Nginx是一个高性能的HTTP和反向代web理服务器,相应更快,占用内存比较小,并发能力强,官网称可以处理五万个并发连接请求。

2.作用

2.1 反向代理

正向代理是代理客户端的,帮助客户端去请求服务端;而反向代理是代理服务端的,当客户端请求时可以无感知的访问服务器资源以及让服务更好的部署上线。

2.2 负载均衡

负载均衡的策略有两种:一种是扩展策略,一种是内置策略。内置策略为轮询、加权轮询、iphash(可以解决session不共享的问题,是对客户端的请求的ip进行hash操作,然后根据hash计算结果将同一个ip分配到同一个服务器上进行处理)。

3.安装

官网下载网址:https://nginx.org/en/download.html

下载时最好选择稳定版本下载即Stable version。

3.1 Windows安装和使用

其中Windows下载有Windows标识的下载后是一个zip包,通过在非中文目录下解压缩后执行nginx.exe即可使用,由于conf中默认配置了监听80端口,本地测试是否启动成功,可以http://localhost/进行访问如果访问到页面显示welcome nginx即为访问成功。

3.2 Linux安装和使用

3.2.1 查看是否已安装

首先确保查看是否有nginx,执行指令whereis nginx,或者直接输入nginx,如果返回 not found即为没有安装过。

3.2.2 安装

3.2.2.1 首先将下载好的nginx-1.20.2.tar.gz压缩包放到服务器上,然后执行解压缩指令tar -zxvf nginx-1.20.2.tar.gz

3.2.2.2 执行配置文件,首先cd进解压好的nginx文件中,然后执行./configure(绿色可执行文件)

如果出现错误为:./configure: error: the HTTP rewrite module requires the PCRE library.

安装pcre-devel解决问题
yum -y install pcre-devel

如果出现出现错误提示:./configure: error: the HTTP cache module requires md5 functions
from OpenSSL library.   You can either disable the module by using
--without-http-cache option, or install the OpenSSL library into the system,
or build the OpenSSL library statically from the source with nginx by using
--with-http_ssl_module --with-openssl=<path> options.

解决办法:

yum -y install openssl openssl-devel

3.2.2.3 执行make指令进行安装

3.2.2.4 执行手动安装make install

3.2.2.5 完成安装,可以通过whereis nginx找到安装到了usr/local/nginx中,在其中是sbin中执行文件,可以通过./nginx进行执行,如果执行成功会没有任何日志,还可以通过服务器ip:80或者服务器ip进行访问,如果出现welcome nginx即为访问成功。

3.3 指令

3.3.1 启动 ./nginx

3.3.2 停止 ./nginx -s  stop 会将进程强制停止

3.3.3 安全退出 ./nginx -s quit 会确保进程是安全的才会一项一项的停止

3.3.4重新加载配置文件(经常会用) ./nginx -s reload

3.3.5 查看nginx进程 ps aux | grep nginx 

3.3.6 补充:如何查看端口是否开放

3.3.6.1 开启防火墙 service firewalld start

3.3.6.2 重启防火墙 service firewalld restart

3.3.6.3 关闭防火墙 service firewalld stop

3.3.6.3 查看防火墙规则 firewalld -cmd --list-all

3.3.6.4 查询端口是否开放 firewall-cmd --query-port=8080/tcp

3.3.6.5 开放80端口 firewall-cmd --permanent --add-port=80/tcp

3.3.6.6 移除端口 firewall-cmd --permanent --remove-port=8080/tcp

3.3.6.7 重启防火墙(修改配置后重启防火墙)firewall-cmd --reload

3.3.6.8参数

3.3.6.8.1 firewall-cmd 是Linux提供的操作firewall 的一个工具;

3.3.6.8.2 --permanent表示设置为持久;

3.3.6.8.3--add-port表示添加的端口

3.4 nginx构成

3.4.1 全局配置 比如指定用户 指定进程等

3.4.2 events配置 比如最大连接数,监听事件

3.4.3 http配置

3.4.3.1 http配置中的全局配置 比如静态文件

3.4.3.2 配置server不同的服务

http默认端口是80

https默认端口443

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。