Nginx网站服务

nginx的特点

高性能 轻量级的web服务软件

高性能 对http并发连接的处理能力很高,单台物理服务器可支持30000-50000个并发请求。(在实际的操作中,为了维持服务器的稳定,一般会设置在20000个左右,求稳)

轻量级:nginx软件很小,安装所需的空间也很小

小服务小软件,但是支持高并发,而且稳定性强

对系统的资源消耗较低

以上是nginx的特点

国内现在基本上用的都是nginx,httd比较少见了


nginx的主要功能

1、处理静态网页:html htm 图像

2、支持反向代理(负载均衡)

3、处理动态内容

4、虚拟主机:nginx可以配置多个虚拟主机,每一个主机都可以作为一个域名或者站点 (一个nginx可以配置多个网站 )

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

5、可以实现URL重定向 可以对URL的请求进行修改和重新定向

6、nginx自带缓存机制,不仅可以缓存静态文件,动态内容也可以

7、自带日志记录 主要是它自身的服务日志,和报错日志。 但是控制日志还是在/var/log/messages中

8、代理服务器,通过代理可以访问其他的后端服务器

比如淘宝所使用的就是基于nginx二次开发的 叫tengine (天极)


nginx的安装

conf:保存nginx的所有配置文件 其中nginx.conf是nginx的主要配置文件

html:保存nginx的web文件,以.html结尾的文件,图片

50x:是nginx默认的报错提示页面

logs:保存日志的目录 路径也可以自己修改

access.log 记录的是访问日志记录

error.log 记录报错日志,403 404 500等都会记录在这里面

sbin:放置nginx二进制的启动文件

nginx - t 检测nginx配置文件以及配置文件语法是否正确

nginx -v 只查看版本

nginx -V 既查看版本也查看nginx支持的配置模块

nginx -s stop restart reload

给nginx的主程序发送信号,不能开启nginx服务

yum 安装需要epel源

yum -y install nginx

但是在工作中,重要的组件 还是以编译安装为主


nginx的配置文件内容

nginx.conf

user nobody; 这个指的就是运行用户,默认使用nginx

worker_processes 1; 工作进程数量 后面的数字是根据服务器的cpu数来的 如果访问量不大,一核足够 在工作中一般是4个

pid /usr/local/nginx/run/nginx.pid; PID文件的位置

events {

worker_conneections 1024; nginx服务端可以同时并发的连接数,最多只有1024个 如果要修改的话可以看下图

一般情况下,给15000就足够了,求稳 单台服务器打开太多也没有意义

}

【root@test~】#vim /etc/security/limits.conf

在这里插入图片描述

soft nproc 表示最大进程数的软限制

hard nproc 最大进程数的硬限制

soft nofile 最大打开文件的限制

在修改内核文件后保存 想要生效必须要重启

http块:配置代理缓存 日志 虚拟主机 第三方模块 这个是核心

sendfile on; 可以支持文件的下载功能

keepalive_timout 65; 这里就是连接保持的时间

#gzip on; 这个默认是注释掉的 开启页面的压缩功能

server块:用来配置虚拟主机的相关设置。在http的模块中可以有多个server。

listen 80; 表示虚拟主机的监听端口,要配置多个虚拟主机端口的话,端口不能重复

server_name localhost; 这个是站点的域名

charset koi8-r; 配置字符的默认编码,支持中文 下面哪个utf添加进去即可

charset utf-8;

location块:location块只能配置在server模块当中,他的作用就是匹配uri,

一个server模块当中可以有多个location 也就是可以匹配多个location

比如:www.baidu.com/test 这个test就是uri location就是匹配这个的


nginx的四大功能模块

1.proxy:代理功能,核心功能模块之一 ,配置反向代理的功能

语法:proxy_pass 指定

定义在location中 他是根据location来的

2.headers:处理请求和头部的响应信息。主要用于获取客户端的真实IP

3.upstream:支持七层反向代理模块,只能配置在http模块中,或者stream模块中

4.stream:四层反向代理模块,不能写在http模块中,只能写在全局配置当中

在这里插入图片描述

如上图所示

==root指定访问页面的根目录是拼接 ==

==假如你指定的是 /var/www/html/test index.html ==

==那么在你所指定的目录下,必须要有index.html格式的文件内容 否则 403 报错 ==

或者你也可以用 alias /var/www/html/test;

==值得注意下的是 root是相对路径 但是alias是绝对路径,一个不能少 负责403报错 ==

这就是root和alias之间的区别


Location匹配格式

location / {

匹配的是URI的路径,即是路径也是URI的名称 上面的/指的就是nginx配置的家目录

root html ;

匹配的是安装路径当中的默认位置的html静态页面 ----/usr/log/nginx/html

index index.html index.htm;

都是以index开头,而且以.html .htm 为结尾的都可以读取到

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

早上的星星

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值