文章目录

  • 一、概述
      • 1.1 Nginx 特点
      • 1.2 Nginx 作用
      • 1.3Nginx工作原理
  • 二、Nginx服务搭建
    • 2.1安装
    • 2.2 目录结构
    • 2.3 配置文件作用
    • 2.4 nginx,conf配置文件详解
    • 2.5 核心命令
    • 2.6 Nginx信号
    • 三.Nginx
    • 3.1启动
  • 总结


一、概述

Nginx 是开源、高性能、高可靠的 Web服务器 和反向代理服务器,而且支持热部署,几乎可以做到 7 * 24 小时不间断运行,即使运行几个月也不需要重新启动,还能在不间断服务的情况下对软件版本进行热更新。性能是 Nginx 最重要的考量,其占用内存少、并发能力强、能支持高达 5w 个并发连接数,最重要的是, Nginx 是免费的并可以商业化,配置使用也比较简单。

1.1 Nginx 特点

  • 高并发、高性能;
  • 模块化架构使得它的扩展性非常好;
  • 异步非阻塞的事件驱动模型(epoll)这点和 Node.js 相似;
  • 相对于其它服务器来说它可以连续几个月甚至更长而不需要重启服务器使得它具有高可靠性;
  • 热部署、平滑升级;
  • 完全开源,生态繁荣。

1.2 Nginx 作用

  • http服务器。Nginx可以独立提供http服务。可做网页静态服务器。
  • 虚拟主机。可以实现在一台服务器虚拟出多个虚拟服务器。
  • 反向代理,负载均衡。当网站的访问量达到一定程度后,单台服务器不能满足用户的请求时,需要用多台服务器集群可以使用nginx做反向代理。并且多台服务器可以平均分担负载,不会应为某台服务器负载高宕机而某台服务器闲置的情况。
  • nginx 中也可以配置安全管理、比如可以使用Nginx搭建API接口网关,对每个接口服务进行拦截。

1.3Nginx工作原理

在这里插入图片描述

二、Nginx服务搭建

2.1安装

yum install -y nginx

编译安装:

tar xf nginx-1.18.0.tar.gz
yum install -y pcre-devel
yum install -y zlib-devel
cd nginx-1.18.0/
./configure --prefix=/usr/local/nginx1.8 && make && make install
在这里插入图片描述

启动: nginx
停止: nginx -s stop
重启 : nginx -s reload

2.2 目录结构

在这里插入图片描述

2.3 配置文件作用

在这里插入图片描述

2.4 nginx,conf配置文件详解

##全局配置,对全局生效##
user  nobody nobody;  # 指定运行 Nginx 进程的用户为 nobody,组为nobody
pid /var/run/nginx.pid # master主进程的的pid存放在nginx.pid的文件
worker_processes  1;  # 指定 Nginx 启动的 worker 子进程数量。
#worker_processes auto; # 与当前cpu物理核心数一致
worker_rlimit_nofile 20480; # 指定 worker 子进程可以打开的最大文件句柄数。
worker_rlimit_core 50M; # 指定 worker 子进程异常终止后的 core 文件,用于记录分析问题。
working_directory /opt/nginx/tmp; # 存放目录
worker_priority -10; # 指定 worker 子进程的 nice 值,以调整运行 Nginx 的优先级,通常设定为负值,以优先调用 Nginx。
#Linux 默认进程的优先级值是120,值越小越优先;nice 定范围为 -20 到 +19 。
#应用的默认优先级值是120加上 nice 值等于它最终的值,这个值越小,优先级越高。
worker_shutdown_timeout 5s; #指定 worker 子进程优雅退出时的超时时间。
timer_resolution 100ms; #worker 子进程内部使用的计时器精度,调整时间间隔越大,系统调用越少,有利于性能提升;反之,系统调用越多,性能下降。
daemon on; # 指定 Nginx 的运行方式,前台还是后台,前台用于调试,后台用于生产。默认是on,后台运行模式。
error_log  logs/error.log;  # 错误日志文件路径##events:配置影响 Nginx 服务器与用户的网络连接;##
events {use epoll;     # 使用epoll的I/O模型(如果你不知道Nginx该使用哪种轮询方法,会自动选择一个最适合你操作系统的)worker_connections  1024;  # 允许的最大并发连接数accept_mutex on; # 是否打开负载均衡互斥锁,默认是off关闭的,这里推荐打开
}
##http:配置代理,缓存,日志定义等绝大多数功能和第三方模块的配置;##
http {include       mime.types;  # 包含 MIME 类型的定义,文件扩展名与类型映射表default_type  application/octet-stream;   # 默认文件类型default_type  application/octet-stream;  # 默认的 MIME 类型log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '  # 日志格式定义'$status $body_bytes_sent "$http_referer" ''"$http_user_agent" "$http_x_forwarded_for"';access_log  logs/access.log  main;  # 访问日志文件及使用的日志格式sendfile       on;  # 启用零拷贝传输,高效传输模式tcp_nopush     on;  # 启用 TCP nopush 选项,减少网络报文段的数量keepalive_timeout  0;  # 禁用持久连接的超时时间keepalive_timeout  65;  # 保持存活连接的超时时间gzip  on;  # 开启 Gzip 压缩include /etc/nginx/conf.d/*.conf;   # 加载自定义配置项##upstream:配置后端服务器具体地址,负载均衡配置不可或缺的部分。##upstream back_end_server{server 192.168.100.33:8081 #定义后端web服务器节点}##server:配置虚拟主机的相关参数,一个 http 块中可以有多个 server 块;每个nginx相当于一个虚拟服务器的地位。##server {listen       80;  # 监听端口 80server_name  localhost;  # 服务器名为 localhostcharset koi8-r;  # 字符集设置为 koi8-raccess_log  logs/host.access.log  main;  # 主机访问日志文件及使用的日志格式##location:用于配置匹配的 uri ;##location / {root   html;  # 指定静态资源目录位置,它可以写在 http 、 server 、 location 等配置中。index  index.html index.htm;  # 默认的索引文件deny 172.168.22.11;   # 禁止访问的ip地址,可以为allallow 172.168.33.44;# 允许访问的ip地址,可以为all}location /image {alias /opt/nginx/static/image/;#它也是指定静态资源目录位置,使用alias末尾一定要添加 / ,只能写在 location 中。}
#当用户访问 www.jx.com/image/1.png 时,实际在服务器找的路径是 /opt/nginx/static/image/1.pngerror_page  404              /404.html;  # 设置 404 错误页面的位置为 /404.htmlerror_page   500 502 503 504  /50x.html;  # 将服务器错误页面重定向到 /50x.htmllocation = /50x.html {root   html;}location ~ \.php$ {proxy_pass   http://127.0.0.1;  # 将 PHP 脚本代理到监听在 127.0.0.1:80 上的 Apache 服务器}location ~ \.php$ {root           html;  # PHP 脚本位置fastcgi_pass   127.0.0.1:9000;  # 向 FastCGI 服务器传递 PHP 脚本fastcgi_index  index.php;  # 指定 FastCGI 服务器默认的脚本文件名fastcgi_param  SCRIPT_FILENAME  /scripts$fastcgi_script_name;  # FastCGI 参数配置include        fastcgi_params;  # 包含 FastCGI 相关的参数配置}location ~ /\.ht {deny  all;  # 阻止访问 .htaccess 文件}}server {listen       8000;  # 监听端口 8000listen       somename:8080;  # 监听 somename:8080server_name  somename  alias  another.alias;  # 服务器名设置location / {root   html;  # 根目录位置为 html 文件夹index  index.html index.htm;  # 默认的索引文件}}server {listen       443 ssl;  # 启动在 443 端口,并开启 SSLserver_name  localhost;  # 服务器名为 localhostssl_certificate      cert.pem;  # SSL 证书文件ssl_certificate_key  cert.key;  # SSL 证书的私钥文件ssl_session_cache    shared:SSL:1m;  # 配置 SSL 会话缓存ssl_session_timeout  5m;  # SSL 会话缓存的超时时间设置为 5 分钟ssl_ciphers  HIGH:!aNULL:!MD5;  # 配置 SSL 加密算法ssl_prefer_server_ciphers  on;  # 优先使用服务器端的加密套件location / {root   html;  # 根目录位置为 html 文件夹index  index.html index.htm;  # 默认的索引文件}}
}

2.5 核心命令

在这里插入图片描述

2.6 Nginx信号

在这里插入图片描述

三.Nginx

3.1启动

在这里插入图片描述
访问当前ip地址
在这里插入图片描述
我们可以在html目录下新创建一个html,里面写内容在访问
在这里插入图片描述
注:为了保持主文件nginx.conf整洁,可以创建多个子文件,然后再主文件使用include即可
在这里插入图片描述
拷贝如下内容到刚才创建的目录下的文件中
在这里插入图片描述

基于端口号配置

server {
listen 803;
server_name localhost;

    #charset koi8-r;#access_log  logs/host.access.log  main;location / {root  html/web1; //这里要去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   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;#}
}
访问时带上刚才配置的端口号

在这里插入图片描述
基于ip地址配置
ifconfig ens33:0 192.168.144.10/24
在这里插入图片描述

在这里插入图片描述
基于域名配置
conf.d下的配置
在这里插入图片描述
conf下的配置
在这里插入图片描述

去另一台主机的/etc/hosts添加
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

总结

今天就先学习下Nginx基于ip地址,端口号,域名的简单配置

希望可以帮助到小伙伴们

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若转载,请注明出处:http://www.pswp.cn/news/910518.shtml
繁体地址,请注明出处:http://hk.pswp.cn/news/910518.shtml
英文地址,请注明出处:http://en.pswp.cn/news/910518.shtml

如若内容造成侵权/违法违规/事实不符,请联系英文站点网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从最基础的float布局开始学前端

前端学习其实不难&#xff0c;我们先从float布局讲起&#xff0c;写一个最简单的导航栏&#xff1a;Logo在左&#xff0c;导航链接在右。下面是示例代码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"…

12. TypeScript 高级类型

TypeScript 中的高级类型包括映射类型、条件类型、字面量类型和递归类型等强大结构。这些特性使开发者能够表达类型之间更复杂的关系&#xff0c;从而处理边缘情况&#xff0c;并定义更动态、更灵活的类型系统。 一、映射类型 TypeScript 映射类型&#xff08;Mapped Types&a…

韩国证券交易所(KRX)全生态接入系统技术白皮书

核心价值&#xff1a;为全球最活跃的衍生品市场&#xff08;日均交易量480亿美元&#xff09;提供 5μs延迟引擎全合规认证&#xff0c;助力中资机构抢占韩国78%衍生品交易份额 一、KRX市场机遇与准入壁垒 1.1 核心数据锚定&#xff08;2025Q2&#xff09; 指标数值全球竞争力…

【Clickhouse系列】增删改查:对比mysql

目录 1. 写入操作 (INSERT) 2. 删除操作 (DELETE) 3. 更新操作 (UPDATE) 4. 查询操作 (SELECT) 5. 总结对比表&#xff1a; 6. 参考链接 核心哲学差异&#xff1a; MySQL&#xff1a; 面向在线事务处理。核心目标是保证数据的强一致性、原子性和低延迟的单行操作&#x…

低压电工作业中,如何正确选用熔断器的额定电流?

在低压电工作业中&#xff0c;正确选用熔断器额定电流需综合考虑负载类型、额定电流等因素&#xff0c;具体方法如下&#xff1a; 照明电路&#xff1a;对于白炽灯负载&#xff0c;熔体额定电流可按被保护电路上所有白炽灯工作电流之和的 1.1 倍选取。若是日光灯和高压水银荧…

MySQL:索引优化实战技巧

目录 一、前言 二、基础知识回顾 三、索引设计优化 1.遵循最左匹配原则&#xff0c;合理设计联合索引顺序 2.利用覆盖索引避免回表查询 3.针对字符串列使用前缀索引 4.合理使用复合索引替代多个单列索引 5.使用前缀索引优化模糊查询的左匹配 四、索引使用优化 1.避免在…

开关电源计算辅助软件SMPSKIT V10.3

资料下载地址&#xff1a;开关电源计算辅助软件SMPSKIT V10.3 SMPSKIT &#xff1a; 内置一些常见IC的计算 内置绝大多数磁芯数据 内置变压器分层计算器 可用户编程功能 包含绝大多数拓…

OpenHarmony应用开发-全量包的使用

文章目录 一、下载full-sdk二、替换本地对应版本的SDK1.查看本地SDK安装目录2.替换对应的SDK版本 三、升级APL权限为系统权限&#xff08;升级后便可使用系统接口&#xff09;四、重启IDE并重新进行应用签名总结 一、下载full-sdk 可以在官方提供的“每日构建”中搜索对应版本…

sudo安装pip包的影响

使用 sudo 安装的 pip 包和不使用 sudo 安装的 pip 包在 Ubuntu 20.04 上有以下几个主要区别&#xff1a; 1. 安装位置&#xff1a; 使用 sudo: 包会被安装到系统级别的 Python 环境中&#xff0c;通常是 /usr/local/lib/python3.8/dist-packages/ 或 /usr/lib/python3/dist-…

uniapp 多图上传,加水印功能(全平台通用)

多图上传和水印都是比较难得&#xff0c;特别是有的api只支持在小程序用&#xff0c;h5不给用 效果图 普通的多图上传 // 多图上传 // count&#xff1a;最大数量 export function headerUploads0(count 9, orderNumber , watermarkInfo) {return new Promise((resolve, r…

【appium】5. Appium WebDriver 支持的常用方法汇总

下面是一个完整的 Appium WebDriver 支持的常用方法汇总&#xff0c;并附上典型用法示例。 一、元素查找方法/元素操作方法 ✅ 使用 find_element() 和 find_elements() from appium import webdriver from appium.webdriver.common.appiumby import AppiumBy# 单个元素查找 …

FreeRTOS 介绍、使用方法及应用场景

一、FreeRTOS 概述 FreeRTOS 是一款广泛应用于嵌入式系统的实时操作系统&#xff08;RTOS&#xff09;&#xff0c;具有开源、可移植、可裁剪、轻量级等显著特点。它最初由 Richard Barry 开发&#xff0c;如今已成为全球开发者在物联网、工业控制、消费电子等领域的热门选择&a…

深度解析 Caffeine:高性能 Java 缓存库

1. Caffeine 简介 Caffeine 是一个基于 Java 8 的高性能本地缓存库&#xff0c;由 Ben Manes 开发&#xff0c;旨在替代 Google Guava Cache&#xff0c;提供更优的缓存策略、更高的吞吐量和更灵活的配置。 核心优势 ✅ 卓越的性能&#xff1a;采用优化的数据结构&#xff0…

创客匠人赋能创始人 IP 打造:健康行业知识变现案例深度解析

在知识服务行业蓬勃发展的当下&#xff0c;创始人 IP 打造已成为知识变现的核心驱动力。创客匠人近期披露的陪跑案例显示&#xff0c;通过系统化的线上线下联动运营&#xff0c;传统行业从业者可高效实现 IP 价值转化。以亓黄中医科技创始人吴丰言老师为例&#xff0c;其在创客…

64、最小路径和

题目&#xff1a; 解答&#xff1a; 简单dp。 定义&#xff1a;dp[i][j]为到达(i,j)所需要的最短路程 初始化&#xff1a;dp[0][0]grid[0][0]&#xff0c;同时对第一行和第一列的&#xff0c;第i个就是前i个之和加上自身 递归&#xff1a;dp[i][j]min(dp[i-1][j],dp[i][j-1…

获取连接通义千问大语言模型配置信息的步骤:api_key、api_url

一、注册并开通通义千问API服务 1. 注册阿里云账号 访问 阿里云官网点击右上角"免费注册"&#xff0c;按指引完成账号注册和实名认证 2. 开通通义千问API服务 进入 通义千问API产品页点击"立即开通"&#xff0c;按提示完成服务开通&#xff08;部分服务…

汽车加气站操作工考试题库含答案【最新】

1.天然气的主要成分是&#xff08;&#xff09;。 A. 乙烷 B. 乙烯 C. 甲烷 D. 乙炔 答案&#xff1a;C 2.CNG 加气站中&#xff0c;加气机的加气软管应&#xff08;&#xff09;进行检查。 A. 每天 B. 每周 C. 每月 D. 每季度 答案&#xff1a;A 3.储气罐的安全阀应&#xf…

显示任何结构的数组对象数据【向上自动滚动】

显示任何结构的数组对象数据 <!DOCTYPE html> <html lang"zh-CN"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>地图编辑软件 - 数…

GPIO模式详解

一、GPIO的八种模式 GPIO支持4种输入模式&#xff08;浮空输入、上拉输入、下拉输入、模拟输入&#xff09;和4种输出模式&#xff08;开漏输出、开漏复用输出、推挽输出、推挽复用输出&#xff09;。 GPIO_Mode_AIN模拟输入GPIO_Mode_IN_FLOATING浮空输入GPIO_Mode_IPD下拉输…

django rest_framework 自定义403 Forbidden错误页面

django本来有是可以很方便自定义HTTP错误页面的&#xff0c;网上资料一大把。核心是在项目的urls代码中增加handler403的定义&#xff0c;比如&#xff1a; handler403 "app.views.your_custom_view" 404&#xff0c;500都是一样的&#xff0c;重新定义handler404…