iis服务器助手广告广告
返回顶部
首页 > 资讯 > 服务器 >4. Nginx
  • 353
分享到

4. Nginx

nginx服务器运维 2023-09-10 13:09:35 353人浏览 泡泡鱼
摘要

用处 Nginx是一款高性能的Http服务器,反向代理服务器,电子邮件(IMAP/POP3)代理服务器。 nginx能支持5万高并发链接,免费开源,cpu、内存等资源消耗非常低,运行稳定。 应用场景:

用处

Nginx是一款高性能的Http服务器,反向代理服务器,电子邮件(IMAP/POP3)代理服务器。
nginx能支持5万高并发链接,免费开源,cpu、内存等资源消耗非常低,运行稳定。
应用场景:
1、http服务器。能独立提供http服务,nginx可以作为服务器部署静态资源网站。
2、虚拟主机。一台服务器虚拟出多个网站,例如个人网站使用的虚拟机
3、反向代理,负载均衡。nginx可以做反向代理,使用服务器集群避免单个服务器的超负载,而nginx可以把请求转发到不同的服务器,而负载均衡就是可以使多台服务器平均分担压力,不会一台服务器宕机,另一台空闲。
在这里插入图片描述

安装

安装GCc环境,nginx是C语言开发的,因此安装nginx需要安装gcc环境。
yun install gcc-c++
2、安装pcre库,nginx的http模块需要pcre来解析正则表达式,而pcre-devel是pcre开发的一个二次开发库。
yum install -y pcre pcre-devel
3、安装zlib库,zlib库提供了很多种压缩和解压缩的方式,nginx使用zlib对http包的内容进行gzip。
yum install -y zlib zlib-devel
4、安装openSSL,nginx不仅支持http协议,还支持https协议(在ssl协议上传输http),openSSL是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能以及SSL协议,并提供丰富的应用程序供测试或其他目的使用。
yum install -y openssl openssl-devel
5、上传nginx的源码包tar.gz到linux(我上传到了/usr/local目录)
6、解压缩(local目录下出现一个 nginx-1.8.0目录)
tar -xvf nginx-1.8.0.tar.gz
7、 进入nginx-1.8.0目录,需要用configure命令创建一个makefile文件

./configure \--prefix=/usr/local/nginx \--pid-path=/var/run/nginx/nginx.pid \--lock-path=/var/lock/nginx.lock \--error-log-path=/var/log/nginx/error.log \--http-log-path=/var/log/nginx/access.log \--with-http_gzip_static_module \--http-client-body-temp-path=/var/temp/nginx/client \--http-proxy-temp-path=/var/temp/nginx/proxy \--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \--http-scgi-temp-path=/var/temp/nginx/scgi

执行后在nginx-1.8.0目录下多一个Makefile文件
8、nginx-1.8.0目录下,编译
make
9、nginx-1.8.0目录下,安装(local目录下出现一个nginx目录)
make install
10、因为在上面把临时文件目录指定为了/var/temp/nginx/client,而此文件不存在,因此需要创建此目录
mkdir /var/temp/nginx/client -p
11、进入nginx目录下的sbin目录
cd /usr/local/nginx/sbin
12、启动nginx
./nginx
13、访问虚拟机ip(默认端口为80)
在这里插入图片描述
14、nginx的关闭有两种:
方式一(非正常退出):./nginx -s stop
方式二(正常退出,保存配置再退出):./nginx -s quit
15、重新加载配置文件
./nginx -s reload

静态资源部署到nginx

认识nginx目录

进入nginx目录
在这里插入图片描述
查看sbin目录:
在这里插入图片描述
在sbin目录下用./nginx命令启动nginx,或./nginx -s reload重启。
查看html目录:
在这里插入图片描述
其中index.html页面对应的是默认nginx启动页面:
在这里插入图片描述
50x.html页面对应的是:
在这里插入图片描述
查看conf目录:
在这里插入图片描述
查看nginx.conf配置文件:
在这里插入图片描述

部署静态资源

index文件里面是准备好的静态资源,先将index文件夹上传到linux上
用fileZilla工具上传index文件夹到linux的/usr/local/nginx目录下
在这里插入图片描述
修改/usr/local/nginx/conf目录下的nginx.conf配置文件
在这里插入图片描述
修改完配置文件,重启nginx

在这里插入图片描述
访问
在这里插入图片描述

配置虚拟主机

就是把一台物理服务器划分出多个虚拟服务器。

端口绑定

reGISt文件里面是准备好的静态资源,先将regist文件夹上传到linux上。
用fileZilla工具上传regist文件夹到linux的/usr/local/nginx目录下。
修改/usr/local/nginx/conf目录下的nginx.conf配置文件,配置两个server
(除了上面配置了访问index目录的server,再配置一个server访问regist目录资源,端口号不一样)
在这里插入图片描述
访问:
80端口:
在这里插入图片描述
81端口:
在这里插入图片描述

域名绑定

域名是ip的对应,访问时输入ip地址+端口号,但ip不好记忆,便有了域名的出现。
baidu.com一级域名,map.baidu.com二级域名。。
dns解析过程:
一个域名对应一个ip,访问baidu.com—>去本地的host文件找有没有baidu.com对应的ip地址—>如果有,则通过80端口访问这个ip,如果没有,通过dns服务器去找域名和ip的对应关系。
总之,配置域名和 ip 的映射关系,如果 hosts 文件中配置了域名和 ip 的对应关系,不需要走dns 服务器。
1、在/etc/hosts文件中设置域名ip映射关系
在这里插入图片描述
2、在nginx配置文件中修改ip为域名(/usr/local/nginx/conf/nginx.conf
在这里插入图片描述
3、刷新配置
在/usr/local/nginx/sbin下执行 ./nginx -s reload
4、访问
在这里插入图片描述
在这里插入图片描述

nginx反向代理与负载均衡

反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器。
在这里插入图片描述

Tomcat上部署一个项目

将一个项目打成war包部署到tomcat。
打成war包,打包后文件名为ROOT
在这里插入图片描述
2、把war包上传到tomcat目录的WEBapp目录下,/usr/local/apache-tomcat-8.5.83/webapps,webapps目录下原本里面的东西可以都删除,我把他们放在了副本文件夹里,把ROOT.war放到webapps目录下。
只所以设置打包后文件名为ROOT,因为/webapps/ROOT目录是tomcat默认目录,tomcat启动后默认加载webapps目录下的应用程序,它可以是文件夹,war包,jar包等形式。
3、启动tomcat
在/usr/local/apache-tomcat-8.5.83/bin下执行 ./startup.sh
4、访问,默认端口是8080,/usr/local/apache-tomcat-8.5.83/conf/server.xml可修改端口。
在这里插入图片描述

配置反向代理

在上面的基础上,修改nginx配置文件/usr/local/nginx/conf/nginx.conf
之前的:
在这里插入图片描述
修改后:
在这里插入图片描述
2、nginx/sbin下刷新 ./nginx -s reload
3、启动tomcat和nginx后,访问www.htmltravel.com,nginx会作为代理,将请求再转发给tomcat服务器,访问192.168.93.129:8080。

配置负载均衡

负载均衡,负载均衡的前提是实现了集群,负载均衡提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽、增加吞吐量、加强网络数据处理能力、提高网络的灵活性和可用性。
负载均衡,就是分摊到多个操作单元上进行执行,例如Web服务器、FTP服务器、企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务。
1、把刚才的tomcat复制三份,相当于三个tomcat服务器,修改端口号。
在这里插入图片描述
2、在tomcat1,2,3目录/conf/server.xml中分贝修改端口号为8081,8082,8083。
在这里插入图片描述
3、在tomcat1,2,3目录/bin下执行./startup.sh分别启动这个三个项目
在这里插入图片描述
4、为了能够区分是访问哪个服务器的网站,可以在首页标题加上标记以便区分。
在这里插入图片描述
5、修改nginx的配置文件 /usr/local/nginx/conf/nginx.conf
在这里插入图片描述
6、访问www.htmltravel.com,nginx代理可能访问192.168.93.129:8081,也可能访问192.168.93.129:8082和192.168.93.129:8083,三台服务器出现的概率各为33.3333333%。
7、可以修改概率的比重,例如2:1:1
在这里插入图片描述

来源地址:https://blog.csdn.net/xxx072655/article/details/127603722

--结束END--

本文标题: 4. Nginx

本文链接: https://www.lsjlt.com/news/402313.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 4. Nginx
    用处 Nginx是一款高性能的http服务器,反向代理服务器,电子邮件(IMAP/POP3)代理服务器。 nginx能支持5万高并发链接,免费开源,cpu、内存等资源消耗非常低,运行稳定。 应用场景:...
    99+
    2023-09-10
    nginx 服务器 运维
  • 4、Nginx命令(reload很重要)
    Nginx命令(reload很重要)   ./nginx -s reload :当我们更改了配置文件,我们都要重新加载我们的配置文件也就是reload例如我们的更改端口号变80位8080       连接不上的操作  来源地址:h...
    99+
    2023-09-02
    服务器 nginx
  • 【问题】4.Nginx之default_server问题
    目录 序言 1.基本介绍  2.显示定义一个 default server  3.指定server_name 为 ip 4. 隐式的 default server Tips:  5.风险问题 问题描述: 原因: 解决方案: 6.总结 ...
    99+
    2023-08-31
    nginx 服务器 运维
  • minio集群部署,4台服务器+1台nginx
    4台主机+1台nginx负载均衡 分布式Minio里所有的节点需要有同样的access秘钥和secret秘钥,即:用户名和密码 分布式Minio存放数据的磁盘目录必须是空目录 分布式Minio官方...
    99+
    2023-09-01
    运维 minio
  • python 4
    while true 做成死循环。for 循环:for 比 while 要快。 range 直接生成一个序列。xrange 不直接生成序列,是用一个,再生成一个。(省内存) zip 可以在两个序列(len()相等)中。组成配对。------...
    99+
    2023-01-31
    python
  • 3-4 文件读写例子(4)
           /// <summary>                 public void ReadTextFile(string filepath, out Int16 i, out string ...
    99+
    2023-01-31
    例子 文件
  • 设置服务器安全环境的4个Nginx小技巧分别是什么
    这篇文章给大家介绍设置服务器安全环境的4个Nginx小技巧分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。分享我们常用的WEB环境安全技巧,一般我们使用NGINX比较多的,对于一般的安全我们很少有去其他的操作,...
    99+
    2023-06-05
  • oracle internals3-4
    Oracle instance 的redo thread产生的最近的日志条目可以通过RBA(redo byte address)来寻址,一个RBA包括如下的三部分: Ø         Log file sequenc...
    99+
    2023-01-31
    oracle
  • python--matplotlib(4)
    前言  Matplotlib画图工具的官网地址是 http://matplotlib.org/ Python环境下实现Matlab制图功能的第三方库,需要numpy库的支持,支持用户方便设计出二维、三维数据的图形显示,制作的图形达到出...
    99+
    2023-09-04
    python matplotlib 开发语言
  • tkinter -- Canvas(4)
    绘制弧形代码;# 绘制弧形 import tkinter as tk root = tk.Tk() # 创建一个 Canvas,设置其背景色为白色 cv&nbs...
    99+
    2023-01-30
    tkinter Canvas
  • 初认python-4
    文件  变量是把数据保存到内存中,如果程序重启/主机重启,内存中的数据就会丢失,要想能让数据被持久化储存,就可以把数据储存到硬盘中,也就是在文件中保存。 在ws中的目录名之间使用  \   来分割   但是使用   /   来分给也是可以...
    99+
    2023-09-22
    python 服务器 开发语言
  • python第4天
    1.while通过except实现可迭代2.2range在py3和py2的区别3.凡是带有yield的函数就一个生成器函数4.生成器函数执行的条件next5.使用生成器监听文件操作6.生成器触发需要先next再send7.如何从生成器中取值...
    99+
    2023-01-31
    python
  • esproc vs python 4
    esprocA1=now()2=file("C:\\Users\\Sean\\Desktop\\kaggle_data\\music_project_data\\sales.csv").import@t()3=A2.groups(year(...
    99+
    2023-01-31
    esproc python
  • nginx(二)---Nginx 日志Log
    日志配置日志轮转/切割日志分析 1.日志配置         1.1日志模块 官方文档    http://nginx.org/en/docs/http/ngx_http_log_module.html 日志模块的名称       ...
    99+
    2023-09-02
    nginx 运维 服务器
  • Nginx
    一、Nginx概述  1.1、Nginx介绍 1.2、Nginx下载和安装  下载: 安装:         注:我们这里演示的是把Nginx安装在虚拟机部署的Linux系统中了。    yum -y install gcc ...
    99+
    2023-09-02
    nginx 服务器 java
  • JUnit 4 与 JUnit 3
    JUnit 是 Java 语言事实上的 标准单元测试库。JUnit 4 是该库三年以来最具里程碑意义的一次发布。它的新特性主要是通过采用 Java 5 中的标记(annotation)而不是利用子类、反射或命名机制来识别测试,从而简化测试。...
    99+
    2023-01-31
    JUnit
  • 55. Python 爬虫(4)
    webdriverSelenium是ThroughtWorks公司开发的一套Web自动化测试工具。它分为三个组件:Selenium IDE Selenium RC (Remote Control) Selenium WebdriverSel...
    99+
    2023-01-31
    爬虫 Python
  • Illegal char <:> at index 4
    一、现象 Java11环境下项目启动时报错:java.nio.file.InvalidPathException: Illegal char at index 4 但项目能正常启动、运行。 二、解决办法 方法1 ...
    99+
    2023-09-23
    java Powered by 金山文档
  • 2023/4/4 常见的五种网络通信协议
    目录 一、Http协议 二、Https协议 三、Socket协议 四、WebSocket协议 五、WebService协议 六、总结 一、Http协议 HTTP协议是一种应用层协议,它是基于TCP/IP协议的,主要用于Web应用程序中的...
    99+
    2023-09-13
    服务器 网络 运维
  • PythonStock(4):使用pyt
    ...
    99+
    2023-01-31
    PythonStock pyt
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作