关键词

一文带你搞懂什么是Nginx服务器

一文带你搞懂什么是Nginx服务器

Nginx服务器是一种轻量级的Web服务器和反向代理服务器。它被设计用来处理高并发的网络请求和静态资源的分发,同时对于动态Web应用具有较好的性能表现。

Nginx服务器的基本特性

  • 轻量级:Nginx的设计理念是高性能、低内存占用,擅长处理高并发连接和静态文件请求,适合用作静态资源服务器或反向代理服务器。
  • 高性能:相比于传统的Apache服务器,Nginx在处理静态资源和并发请求时表现更加出色。它通过事件驱动、异步非阻塞的设计使得能够处理大量并发请求,同时占用更低的系统资源。
  • 负载均衡:Nginx支持负载均衡功能,可将请求分发到多个后端服务器上,从而提升应用的性能和可靠性。
  • 动态模块:Nginx拥有广泛的动态模块库,可以通过编译安装或第三方模块集成来扩展功能。
  • 安全性:Nginx支持防火墙、访问控制、HTTPS等多项安全特性,可以保证应用的数据与通信安全。

Nginx的应用场景

  • 静态资源服务器:Nginx可以作为一个高性能的静态资源服务器,快速地响应客户端请求,实现图片、JS、CSS等静态资源的访问。
  • 反向代理服务器:Nginx可以做反向代理服务器,负责重定向和负载均衡,分配应用请求到指定的后台Web服务器。
  • Web应用服务器:Nginx支持FastCGI、uWSGI、SCGI等协议,可以配置为Web应用服务器,运行PHP、Python、Java等动态Web应用。
  • 云平台负载均衡器:Nginx可用于云平台负载均衡器实现,支持动态扩展、容灾备份、故障转移等功能,为云计算企业提供高效的负载均衡服务。

Nginx的安装与配置

下面分别以Ubuntu和CentOS为例介绍Nginx的安装和配置。

Ubuntu下的安装和配置

Step 1:更新软件源

sudo apt update
sudo apt upgrade

Step 2:安装Nginx

sudo apt install nginx

Step 3:启动Nginx

sudo service nginx start

CentOS下的安装和配置

Step 1:更新软件源

sudo yum update

Step 2:添加Nginx源

sudo yum install epel-release

Step 3:安装Nginx

sudo yum install nginx

Step 4:启动Nginx

sudo systemctl start nginx

Nginx与Apache的比较

Nginx与Apache是目前流行的两个Web服务器,它们使用不同的处理机制。

  • Apache是基于多进程的模型,在处理新连接的时候,每个连接都会创建新的进程或线程来处理,这样会导致大量的系统资源被占用。
  • Nginx采用事件驱动的方式,通过一个主线程不断的轮询每一个连接,将连接交给一个工作线程进行处理,这样可以做到较少的进程开销和较少的上下文切换,提高了系统处理能力。

示例1:建立静态资源服务器

Step 1:进入Nginx配置文件目录

cd /etc/nginx/

Step 2:创建新的站点

sudo mkdir sites-available
sudo mkdir sites-enabled
sudo touch sites-available/example.com

Step 3:编辑站点配置文件

sudo vi /etc/nginx/sites-available/example.com

在文件中写入下面代码:

server {
    listen       80;
    server_name  example.com;
    root /var/www/example.com;
    location / {
        index index.html;
    }
    error_page  404              /404.html;
    location = /404.html {
        internal;
    }
}

Step 4:激活站点配置

sudo ln -s /etc/nginx/sites-available/example.com /etc/nginx/sites-enabled/

Step 5:创建项目目录

sudo mkdir /var/www/example.com
cd /var/www/example.com
sudo touch index.html

在index.html文件中加入一段文字

Hello, World! This is my first Nginx site.

Step 6: 重启Nginx

sudo service nginx restart

现在,你可以在浏览器中输入 http://example.com 来查看自己的网站。

示例2:配置动态应用服务器

Step 1:安装PHP和Nginx

sudo apt install php-fpm
sudo apt install nginx

Step 2:创建网站根目录和PHP文件

sudo mkdir /var/www/phpsite
sudo touch /var/www/phpsite/index.php

在index.php中输入:

<?php
echo "<h1>Hello, World!</h1>";
?>

Step 3:创建Nginx站点配置文件

sudo vi /etc/nginx/sites-available/phpsite

在文件中输入:

server {
    listen 80;
    server_name  phpsite.com;
    root /var/www/phpsite;
    index index.php;

    location / {
            try_files $uri $uri/ /index.php?$query_string;
            }
    location ~ \.php$ {
        include fastcgi_params;
        fastcgi_pass unix:/var/run/php/php7.4-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME /var/www/phpsite$fastcgi_script_name;
    }
}

Step 4:将新站点设置为启动状态

sudo ln -s /etc/nginx/sites-available/phpsite /etc/nginx/sites-enabled/
sudo service nginx restart

现在,你可以在浏览器中访问 http://phpsite.com/index.php 直接查看PHP网页。

至此,你已经学会了如何安装、配置和使用Nginx服务器。祝你愉快!

本文链接:http://task.lmcjl.com/news/7051.html

展开阅读全文