【Nginx】nginx入门

文章目录

一、Web服务器

Web 服务器,一般是指"网站服务器",是指驻留于互联网上某种类型计算机的程序。Web 服务器可以向 Web 浏览器等客户端提供文档,也可以放置网站文件,让全世界浏览,更可以放置数据文件,让全世界下载。

Web 服务器,也称为"WWW 服务器"( 英文全写: World Wide Web,翻译成中文:万维网或环球信息网 ),主要功能是"提供网上信息浏览服务"。 WWW 是 Internet(互联网)的多媒体信息查询工具,是 Internet(互联网)上发展起来的服务,也是发展最快和目前使用最广泛的服务。正是因为有了 WWW 工具,才使得近十几年来互联网迅速繁荣发展,用户数量飞速飙升。据最新数据显示,目前全球人口数量达到 76.76 亿人,其中全球"网民"(互联网用户)达到惊人的 43.88 亿。

例如百度就是一个 web 服务器,提供搜索服务。


二、Nginx

Nginx 是一款自由的、开源的、高性能的 HTTP 服务器和反向代理服务器;同时也是一个 IMAP、 POP3、 SMTP 代理服务器; Nginx 可以作为一个 HTTP 服务器进行网站的发布处理,另外 Nginx 可以作为反向代理进行负载均衡的实现。可以理解 Nginx 是 web 服务器的一种实现。

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

同时,它的底层是C语言实现的,官方数据测试表明能够支持高达 5w个并发连接数的响应。


三、Nginx的作用

Web服务器

Nginx 作为 Web 服务器可以向各种浏览器等客户端提供浏览服务,比如我们通过手机、电脑、平板可以访问百度来实现对 web 服务器的访问。


正向代理

正向代理的工作方式

  1. 客户端配置网络设置,将请求发送给正向代理服务器
  2. 正向代理服务器接收到请求后,根据客户端请求的目标地址,代表客户端向目标服务器发送请求
  3. 目标服务器处理请求并发送响应
  4. 正向代理服务器接收到响应后,将其返回给客户端

正向代理的主要功能

  1. 访问控制:正向代理可以根据特定的策略和规则,对客户端的请求进行访问控制,例如限制特定网站的访问或实施身份验证
  2. 隐私保护:正向代理可以隐藏客户端的真实身份和位置,提供一定的匿名性
  3. 缓存:正向代理可以缓存常用的内容,以减少网络流量和提高响应速度
  4. 加速访问:正向代理服务器可以通过压缩、缓存和优化网络连接等方式,加速客户端与目标服务器之间的通信。

反向代理

反向代理 扮演服务器的角色,接收来自客户端的请求,并将其转发到后端服务器,对于用户是无感知的,客户端发送请求,但是不知道哪个服务端收到了请求,客户端只和反向代理进行通信。

反向代理的工作方式

  1. 客户端向反向代理发送请求
  2. 反向代理接收到请求后,根据预先设置的规则,将请求转发到一个或多个后端服务器
  3. 后端服务器处理请求并发送响应
  4. 反向代理接收到响应后,将其返回给客户端

反向代理的主要功能包括

  1. 负载均衡:反向代理可以将请求分发到多个后端服务器,以实现负载均衡,提高系统的性能和可扩展性。
  2. 缓存:反向代理可以缓存静态内容,减轻后端服务器的负载,提高响应速度
  3. 安全性:反向代理可以作为防火墙,保护后端服务器免受恶意请求和攻击
  4. SSL 加密:反向代理可以终止 SSL 连接,解密传入的请求,并将其转发给后端服务器,提供安全的通信

四、CentOS上安装Nginx(以CentOS 7.9为例)

检查宿主机上是否存在Nginx

bash 复制代码
ps -ef | grep nginx

这里我们可以看到机器上并不存在nginx。

安装nginx

💕 配置yum源

bash 复制代码
rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

💕 构建缓存

构建缓存的目的是为了后续加速nginx的下载。

💕 通过安装nginx

bash 复制代码
yum install nginx -y

💕 查看并启动nginx

bash 复制代码
#查看nginx是否启动
 
#启动nginx(方式一)
systemctl start nginx
#启动nginx(方式二)
nginx
#关闭nginx
kill PID

💕 nginx调整配置

bash 复制代码
cd /etc/nginx/

查看该文件

bash 复制代码
[root@iZf8z8fcvqy10dpg47hwlxZ conf.d]# cat default.conf 
server {
    listen       80;
    server_name  localhost;

    #access_log  /var/log/nginx/host.access.log  main;

    location / {
        root   /usr/share/nginx/html;
        index  index.html index.htm;
    }

    #error_page  404              /404.html;

    # redirect server error pages to the static page /50x.html
    #
    error_page   500 502 503 504  /50x.html;
    location = /50x.html {
        root   /usr/share/nginx/html;
    }

    # proxy the PHP scripts to Apache listening on 127.0.0.1:80
    #
    #location ~ \.php$ {
    #    proxy_pass   http://127.0.0.1;
    #}

    # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
    #
    #location ~ \.php$ {
    #    root           html;
    #    fastcgi_pass   127.0.0.1:9000;
    #    fastcgi_index  index.php;
    #    fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;
    #    include        fastcgi_params;
    #}

    # deny access to .htaccess files, if Apache's document root
    # concurs with nginx's one
    #
    #location ~ /\.ht {
    #    deny  all;
    #}
}

💕 在浏览器看是否执行成功


相关推荐
ping某1 天前
为什么 Nginx 明明监听了 80,转发后端时却用了 4xxxx 端口?
后端·nginx
大树883 天前
金刚石散热越强,管路越先见顶
大数据·运维·服务器·人工智能·ai
摇滚侠3 天前
Linux CentOS7 rpm 安装 MySQL 5.7
linux·运维·mysql
霸道流氓气质3 天前
领域驱动设计(DDD)在 Spring Boot 微服务中的实践指南
运维·spring boot·微服务
Inhand陈工3 天前
基于台达PLC与映翰通IG502的智慧水产养殖精准投喂与远程运维解决方案
运维·人工智能·物联网·阿里云·信息与通信
酣大智3 天前
ARP代理--工作原理
运维·网络·arp·arp代理
shushangyun_3 天前
2026年快消品B2B系统推荐:支持终端门店订货、促销政策自动化的工具?
java·运维·网络·数据库·人工智能·spring·自动化
施努卡机器视觉3 天前
SNK施努卡侧滑门锁上滑轮总成自动化装配线,从零件到组件,全流程精密制造方案
运维·自动化·制造
AC赳赳老秦3 天前
用 OpenClaw 搭建服务器故障应急响应系统,自动处理 80% 常见运维故障
android·运维·服务器·python·rxjava·deepseek·openclaw
java_cj3 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes