nginx 以及nginx优化

目录

nginx功能介绍

静态文件服务

反向代理

动态内容处理

[SSL/TLS 加密支持](#SSL/TLS 加密支持)

虚拟主机支持

[URL 重写和重定向](#URL 重写和重定向)

缓存机制

日志记录

可扩展性和灵活性

nginx的主要应用场景

nginx常用命令

nginx另外一种安装方式

nginx常用的信号符:

nginx配置文件详解


nginx功能介绍

Nginx 是一款高性能的开源 Web 服务器和反向代理服务器,它具有以下主要功能:

静态文件服务

Nginx 可以直接提供静态文件的服务,例如 HTML、CSS、JavaScript、图像等。

它能够高效地处理并响应静态文件的请求。

反向代理

Nginx 可以作为反向代理服务器,将客户端的请求转发给后端的多个服务器。

它可以实现负载均衡、高可用性和故障转移,提供更好的性能和可靠性。

动态内容处理

Nginx可以与后端应用服务器(如 PHP-FPM、Node.js、Java 应用服务器等)配合使用,

实现动态内容的处理和执行。它可以代理动态请求,并将请求的结果返回给客户端。

SSL/TLS 加密支持

Nginx 支持通过 SSL/TLS 对客户端和服务器之间的通信进行加密,

提供安全的 HTTPS 连接。

虚拟主机支持

Nginx 支持配置多个虚拟主机,使得可以在同一台服务器上托管多个域名或站点。

每个虚拟主机可以拥有独立的配置和资源。

URL 重写和重定向

Nginx 支持灵活的 URL 重写和重定向规则,可以对请求的 URL 进行修改和重定向,

实现 URL 的美化和重定向策略。

缓存机制

Nginx 提供了强大的缓存功能,可以缓存静态文件和动态内容,

以减轻后端服务器的负载并提供更快的响应速度。

日志记录

Nginx 能够记录访问日志和错误日志,可以记录请求的详细信息,包括访问时间、请求路径、

IP、响应状态等,帮助进行故障排查和性能分析。

可扩展性和灵活性

Nginx 的模块化架构和强大的配置选项使得它具有很高的可扩展性和灵活性。

你可以通过加载不同的模块和自定义配置来满足特定的需求。

nginx的主要应用场景

1、静态服务

2、反向代理,负载均衡

3、缓存服务

4、动态服务

nginx常用命令

nginx -t:检查配置文件是否配置正确

nginx -v:查看nginx的版本号

nginx -s:向主进程传输信号(停止、开启、重启、重新加载)

nginx -c:设置配置文件的默认路径

nginx另外一种安装方式

epel源

yum install -y epel-release

yum install nginx -y

nginx常用的信号符:

信号符结合kill命令

kill -USR 1 pid号 #日志分割

kill -s HUP pid号 #只要是kill,只能跟pid号,重新加载

killall -s HUP nginx #用killall可以跟服务名,也可以用pid号

kill -s QUIT pid号 #优雅退出,有人访问时,不会结束进程,访问完了,才会结束进程

kill -s WINCH pid号 #优雅的结束worker,直到请求完成,才会结束worker进程

nginx配置文件详解

work_processes 1; #工作进程也就是worker进程的数量,一般是配置成cpu数一致或者2倍。一般来说小网站设置成1,足够了。

events块配置影响nginx服务器与用户之间的网络连接

worker_connections 1024; #每个进程可以处理的最大连接数 //ulimit -a 可以查看连接数限制

修改linux服务器文件的最大打开数量:ulimit -n 65535 (linux只支持打开65535) //临时修改

http模块主要是针对http请求的配置,代理、缓存、日志,反向代理,虚拟web主机,server块。

非http请求的方式,不能写在该模块当中。反向代理:七层,四层(不能配置在http模块中)

keepalive_timeout 65; #65秒

gzip on #打开压缩模块

server模块可以配置虚拟主机的相关参数,一个http模块当中,可以有多个server模块,一个server模块对应一个虚拟主机

server {

listen 80;

server_name office.dmsd.tech;

root /nginx/www;

index index.php index.html index.html;

charset utf-8;

access_log logs/access.log;

error_log logs/error.log;

}

location模块匹配的是URI

location / #通用匹配

location = #精确匹配

location模块中

root 拼接,root指定的目录和location匹配的uri之间做的一个拼接,/opt/ky30 这两个路径都要真实存在,而且都是目录,并且,在uri目录里面要有web文件。

alias:匹配指定路径下的web文件

root后面有没有/无所谓 root /opt/

alias加了/,后面也必须有/,否则,匹配不到 alias /opt

root标签可以使用重定向

alias不可以设置重定向

proxy_pass #反向代理配置,也是写在location模块当中

相关推荐
山东布谷科技官方3 分钟前
布谷直播源码部署服务器关于数据库配置的详细说明
运维·服务器·数据库·直播系统源码·直播源码·直播系统搭建·直播软件开发
One_Blanks4 分钟前
渗透测试-Linux基础(1)
linux·运维·安全
yanwushu4 分钟前
Xserver v1.4.2发布,支持自动重载 nginx 配置
mysql·nginx·php·个人开发·composer
爱吃喵的鲤鱼8 分钟前
linux进程的状态之环境变量
linux·运维·服务器·开发语言·c++
dessler20 分钟前
Linux系统-ubuntu系统安装
linux·运维·云计算
向阳121827 分钟前
Dubbo负载均衡
java·运维·负载均衡·dubbo
荒Huang1 小时前
Linux挖矿病毒(kswapd0进程使cpu爆满)
linux·运维·服务器
海阔天空_20131 小时前
Python pyautogui库:自动化操作的强大工具
运维·开发语言·python·青少年编程·自动化
桥田智能1 小时前
气爪在自动化装配线中是如何应用的?
运维·自动化
€☞扫地僧☜€3 小时前
docker 拉取MySQL8.0镜像以及安装
运维·数据库·docker·容器