素材巴巴 > 程序开发 >

nginx安装与使用(入门)

程序开发 2023-09-21 23:13:19

目录

安装

入门

1. 什么是nginx

2. Nginx的作用

部署静态资源到ngnix

配置文件

部署外部资源到nginx

多个虚拟主机配置与域名映射

配置多个虚拟主机

配置反向代理


 

安装

win下

前往这里下载

nginx: download

如果启动后报错:

 nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions)

我们修改配置文件即可,看图

 

我这里改为了 30 

OK,再次使用命令行启动!,成功!

 在浏览器输入localhost,如果出现这个页面,说明你没有加上端口号,加上即可

加上端口号即可 

 我的最终地址

 http://127.0.0.1:30/

入门

1. 什么是nginx

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,特点是占有内存少,并发能力强,事实上
nginx的并发能力在同类型的网页服务器中表现较好。
Nginx专为性能优化而开发,性能是其重要的考量,实现上非常注重效率,能经受高负载的考验,能支持高达
50000个并发连接数

2. Nginx的作用


1: 静态服务器
在我们前后端分离的项目中 我们的前端项目开发完毕之后,也是需要发布到一个服务器上,供用户访问
此时
就需要用到nginx
2: 虚拟主机:
我们一个服务器可以模拟多个虚拟主机,虽然访问的链接不同,但是都表示一个主机 所以访问的内
容是一致 的
3: 反向代理:
nginx可以作为反向代理服务器,客户端发送http请求 访问的是nginx这个反向代理服务器,反
向代理 服务器nginx会选择目标服务器,最终完成请求 获取数据
4: 负载均衡:
我们部署应用,项目运行在tomcat上 一个tomcat的并发访问默认200 手动调并发数量 最多
600-700的并发
当我们用户量比较大的时候 我们的项目要占用不同的端口部署多个,目的起到请求分流的效果,减
轻服务器 的压力,此时就需要负载均衡

部署静态资源到ngnix

 1 将需要的静态资源复制到nginx的html目录中

2 重启nginx,先终止,后启动

3 打开localhost:30即可看到部署的资源

配置文件

第一部分:全局块
主要会设置一些影响Nginx 服务器整体运行的配置指令
第二部分:Events块
worker_connections 1024;表示每个 worker process 支持的最大连接数
第三部分:Http块
这是Nginx服务配置中最频繁的部分,代理、缓存和日志定义等绝不多数功能和第三方模块的配置都在这
里。需要 注意的是:http 块也可以包括http全局块、server块。server 块又包含全局server块和
localtion块。

我们看其中的root,指的是,我们静态资源的根目录,所以说有了这个,我们就可以让ngnix管理我们任意路径的静态资源了

部署外部资源到nginx

示例

1 复制外部静态资源的路径

 2 修改配置文件中的root,为我们刚刚复制的路径

多个虚拟主机配置与域名映射

虚拟主机:      

        我们一个服务器可以模拟多个虚拟主机,虽然访问的链接不同,但是都表示一个主机 所以访问的内容是一致 的,nginx的一个server标签就是一个虚拟主机 我们配置多个server标签就可以代表多个主机

域名解析

配置多个虚拟主机

1 打开配置文件,将server完整的复制一份

2 更改server-name为自己定义的网址,我的是www.scm.com

3 将复制的server的完整内容放在server的下面,同时再次执行步骤2 

我这里用的是www.zgt.com 

4 配置域名映射的ip地址

在资源管理器输入以下目录,找到hosts

C:WindowsSystem32driversetc

 先修改权限

修改失败的没办法,我也是,呜呜呜,

知道思路就可以了!!! 

等一下,有后续了!,可以通过vscode修改!!!,离谱!

用vscode打开,那个文件,然后直接修改,点保存,方框地方会出现提示是否覆盖,我们选覆盖即可!

 

配置反向代理

1 反向代理是什么?

概念: Nginx作为反向代理服务器接收来自客户端的请求,并将请求转发给后端的真实服务器集群中的一台。

典型代表:负载均衡 特点: 主要用于服务器进群分布式部署的情况下,隐藏了服务器的真实信息

 2 springboot使用反向代理

@RestController
 @RequestMapping("/cs")
 public class CsController {@GetMapping("/nginx")public String userNginx(){return "hello,world!";}
 }

3 修改host系统文件,将我们的127.0.0.1输入,然后后面是我们自定义的域名

4 更改nginx配置文件, 替换为我们需要更换的地址,并启动neginx

5 成功截图,如果不成功的还请打开无痕模式再尝试

 

 

这样我们就可以使用我们定义的server_name去访问内容了,同时也隐藏了真实的ip了


标签:

素材巴巴 Copyright © 2013-2021 http://www.sucaibaba.com/. Some Rights Reserved. 备案号:备案中。