【linux服务器基础环境配置1】-Ngnix篇

web应用服务器软件

比如,你现在要部署一个网址,需要web浏览器去访问。

凡是通过web浏览器访问的网址,都需要在服务器先部署一个web应用服务器软件(ngnix,apache,tomcat)

这三巨头,里面必须你要选择一个,或者一个以上。

ps:如果不配置这些web应用服务器软件,直接通过浏览器去访问,是无法访问的。

Nginx知识

1.ngnix的介绍:

nginx是一款高性能的开源Web服务器软件,也可以用作反向代理、负载均衡和HTTP缓存等。它采用事件驱动的异步架构,能够同时处理大量的并发连接,具有非常高的并发处理能力和稳定性。nginx还支持动态模块化扩展,可以通过第三方模块实现各种功能,如SSL/TLS加密、HTTP2协议、WebSocket、FastCGI、Lua脚本等。由于其高效、灵活和可靠的特性,nginx已经成为Web应用服务器领域的主流选择之一

通俗的理解:

nginx是一种软件,就像你在电脑上安装的QQ、微信一样。但不同的是,它是一种用于网站和应用程序的软件,可以帮助网站和应用程序更快地响应用户请求。就像你去饭店吃饭,如果有一个很好的服务员,他可以快速地为你点菜、上菜,让你不用等很久,感觉很舒服一样。而且,nginx还可以帮助网站和应用程序处理更多的并发请求,就像一个饭店里有更多的服务员,可以同时为更多的客人服务一样。这样,用户就可以更快地访问网站或使用应用程序,提高了用户体验。

同时,ngnix也是一个中间件

2.ngnix的主要功能:

nginx有以下几个主要功能:

  1. Web服务器:可以将网站的文件和数据传输给用户的浏览器,让用户能够访问网站。
  2. 反向代理:可以将用户的请求转发到其他服务器上,比如将请求转发到Tomcat服务器上处理,让Tomcat服务器来提供服务。
  3. 负载均衡:可以将用户的请求分配给多个服务器处理,让多个服务器来共同处理请求,从而提高系统的性能和可靠性。
  4. HTTP缓存:可以将网站的静态资源(如图片、CSS、JS等)缓存到内存中或磁盘中,让用户在再次访问同一资源时能够更快地获取到资源,从而提高网站的访问速度。

3.安装ngnix

以下是在CentOS 7.5上安装nginx的步骤:

  1. 更新系统:
yum update

2.安装epel-release:

//通过安装EPEL源,我们可以很方便地安装redis,ngnix这些这些软件包,从而扩展系统的功能和性能。

//如果已经安装好了,就没必要再装了

yum install epel-release

3.安装nginx:

yum install nginx

4.启动nginx:

systemctl start nginx

5.设置nginx开机启动:

systemctl enable nginx

6.配置防火墙,允许HTTP和HTTPS访问:

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https

//配置好后要重载一下
sudo firewall-cmd --reload    

ps:
如果防火墙提示未启动,那么需要先启动防火墙
启动防火墙:systemctl start firewalld

关闭防火墙:systemctl stop firewalld

检查防火墙状态:systemctl status firewalld 

安装完成后,可以通过访问服务器的IP地址或域名来测试nginx是否正常工作。

默认情况下,nginx的网站根目录为/usr/share/nginx/html

如果访问不了,记得检查下云服务器的80端口是否开放

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-uVaNhFpI-1684218047536)(C:\Users\86189\Desktop\assets\image-20230512165134117.png)]

在这里插入图片描述

4.ngnix的正向代理跟反向代理的区别?

正向代理和反向代理的区别在于他们的工作方式和位置不同。

正向代理是客户端通过代理服务器访问目标服务器的方式,代理服务器在客户端和目标服务器之间充当一个中转站的角色,客户端向代理服务器发送请求,代理服务器再将请求发送给目标服务器,目标服务器将响应发送给代理服务器,代理服务器再将响应发送给客户端。正向代理隐藏了客户端的真实IP地址,保护了客户端的隐私,同时可以提高访问目标服务器的速度,减轻目标服务器的压力。例如,你在公司访问某个网站时,公司可能会设置一个代理服务器,你的请求会先发送给代理服务器,代理服务器再将请求发送给目标网站,目标网站返回的响应也会先发送给代理服务器,代理服务器再将响应发送给你的电脑。

反向代理则是目标服务器通过代理服务器向客户端提供服务的方式,代理服务器在目标服务器和客户端之间充当一个中转站的角色,客户端向代理服务器发送请求,代理服务器将请求发送给目标服务器,目标服务器将响应发送给代理服务器,代理服务器再将响应发送给客户端。反向代理隐藏了目标服务器的真实IP地址,保护了服务器的安全,同时可以提高响应速度和稳定性,减轻目标服务器的负载压力。例如,当你访问某个网站时,你的请求会先发送给反向代理服务器,反向代理服务器会将请求转发给多个目标服务器中的一个来处理,然后将响应发送给你的电脑。

正向代理,是隐藏掉了客户端的ip信息,保护了客户端隐私,为了提升性能

反向代理,是隐藏掉了服务器的ip信息,保护服务器的安全,同时大大的提高了响应速度

日常的工作里面,配置反向代理的比较多

5.如何配置代理

1.绝大多数软件的配置文件,都是以conf结尾的文件

2.在服务器上,大多数的软件的配置文件,存放在/etc目录下

nginx的配置文件是nginx.conf,通常位于/etc/nginx/目录下。

你可以通过编辑这个文件来进行nginx的配置。具体步骤如下:

打开nginx.conf文件:

sudo vim /etc/nginx/nginx.conf

找到http块,这个块包含了所有的HTTP配置:

http {
    
    
    ...
}

http块中添加一个server块,这个块包含了一个虚拟主机的配置:

http {
    
    
    server {
    
    
        ...
    }
}

server块中添加具体的配置,如正向代理或反向代理的配置示例中的内容。

保存并退出nginx.conf文件。

检查nginx配置是否正确:

sudo nginx -t

如果配置正确,会输出nginx: configuration file /etc/nginx/nginx.conf test is successful

重启nginx服务:

sudo systemctl restart nginx

这样就完成了nginx的配置。

需要注意的是,如果你修改了nginx.conf文件,需要重启nginx服务才能使配置生效。


6.配置案例:

要配置nginx作为正向代理或反向代理,需要进行不同的配置。以下是简单的配置示例:

他们是在同一个文件里面配置

nginx.conf

6.1正向代理配置:
http {
    
    
  server {
    
    
    listen 80;
    server_name proxy.example.com;
    location / {
    
    
      proxy_pass http://upstream_server;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
    }
  }
}

这个配置将nginx配置为一个正向代理服务器,监听80端口,当有请求到达时,将请求转发到名为upstream_server的服务器上,同时将请求头中的Host和X-Real-IP字段设置为客户端的值。

6.2 反向代理配置:
http {
    
    
  upstream backend {
    
    
    server backend1.example.com;
    server backend2.example.com;
  }
  server {
    
    
    listen 80;
    server_name example.com;
    location / {
    
    
      proxy_pass http://backend;
      proxy_set_header Host $host;
      proxy_set_header X-Real-IP $remote_addr;
    }
  }
}

这个配置将nginx配置为一个反向代理服务器,监听80端口,当有请求到达时,将请求转发到名为backend的服务器集群上,这个集群包含了两台服务器backend1.example.com和backend2.example.com。同时将请求头中的Host和X-Real-IP字段设置为客户端的值。

需要注意的是,这只是简单的示例配置,实际的配置需要根据具体情况进行调整。你需要了解nginx的配置语法和相关指令的含义,才能正确地配置nginx作为正向代理或反向代理。

7.Nginx安装目录

Nginx的安装目录默认文件在/usr/local/nginx。在这个目录下有一些重要的文件和目录,如下所示:

  • conf目录:存储Nginx的配置文件。
  • html目录:存储Nginx的默认网页文件。
  • logs目录:存储Nginx的日志文件。
  • sbin目录:存储Nginx的可执行文件。

conf目录中,有两个重要的文件:

  • nginx.conf:Nginx的主配置文件,包含了所有Nginx服务器的配置信息。
  • mime.types:Nginx的MIME类型配置文件,指定了Nginx可以处理的文件类型及其对应的Content-Type。

除了这些文件和目录,还有一些其他的文件和目录,例如Nginx的模块文件和Nginx的二进制可执行文件等。

猜你喜欢

转载自blog.csdn.net/nandoua/article/details/130704752