【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

ps -ef | grep nginx

在这里插入图片描述

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

安装nginx

💕 配置yum源

rpm -Uvh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm

在这里插入图片描述

💕 构建缓存

在这里插入图片描述

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

💕 通过安装nginx

yum install nginx -y

在这里插入图片描述

💕 查看并启动nginx

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

在这里插入图片描述

💕 nginx调整配置

cd /etc/nginx/

在这里插入图片描述

查看该文件

在这里插入图片描述

[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;
    #}
}

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

在这里插入图片描述


相关推荐

  1. docker从入门入土

    2024-02-04 03:06:01       59 阅读
  2. 入门 PyTorch

    2024-02-04 03:06:01       63 阅读
  3. C++<span style='color:red;'>入门</span>

    C++入门

    2024-02-04 03:06:01      49 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-02-04 03:06:01       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-02-04 03:06:01       100 阅读
  3. 在Django里面运行非项目文件

    2024-02-04 03:06:01       82 阅读
  4. Python语言-面向对象

    2024-02-04 03:06:01       91 阅读

热门阅读

  1. 码农也得“开口说话”

    2024-02-04 03:06:01       57 阅读
  2. 建立数据库连接时出错

    2024-02-04 03:06:01       55 阅读
  3. 在 WSL Ubuntu 中安装 SSH 服务器,ssh连接wsl

    2024-02-04 03:06:01       44 阅读
  4. 假期作业2

    2024-02-04 03:06:01       48 阅读
  5. ArrayList的数据结构

    2024-02-04 03:06:01       51 阅读
  6. Mysql-备份与恢复

    2024-02-04 03:06:01       61 阅读
  7. C语言stderr、errno、strerror、perror

    2024-02-04 03:06:01       49 阅读
  8. Linux命令-arpd命令(收集免费ARP信息)

    2024-02-04 03:06:01       53 阅读