学习nginx

article/2025/10/16 22:01:04
Nginx笔记
安装nginx
wget -c https://nginx.org/download/nginx-1.20.1.tar.gz
1、创建软链路

在这里插入图片描述
ls /usr/local/nginx/sbin/nginx /usr/bin/
2、前端部署配置 Conf
在这里插入图片描述
在这里插入图片描述
3、启动服务
由于软链路 可以直接
nginx 启动(任意目录)
停止
nginx -s quit

4、用nginx实现tcp代理,并实现负载均衡

   upstream mysqld {hash $remote_addr consistent;server 192.168.1.42:3306 weight=5 max_fails=1 fail_timeout=10s;server 192.168.1.43:3306 weight=5 max_fails=1 fail_timeout=10s;}server {listen 3306;proxy_connect_timeout 1s;proxy_timeout 3s;proxy_pass mysqld;
}

5、安装nginx

1)wget -c https://nginx.org/download/nginx-1.20.1.tar.gz

第二步:配置nginx安装所需的环境

  1. 安装gcc

安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境。安装指令如下:

yum install gcc-c++

1
2. 安装PCRE pcre-devel

Nginx的Rewrite模块和HTTP核心模块会使用到PCRE正则表达式语法。这里需要安装两个安装包pcre和pcre-devel。第一个安装包提供编译版本的库,而第二个提供开发阶段的头文件和编译项目的源代码。安装指令如下:

yum install -y pcre pcre-devel

1
3.安装zlib

zlib库提供了开发人员的压缩算法,在Nginx的各种模块中需要使用gzip压缩。安装指令如下:

yum install -y zlib zlib-devel

1
4.安装Open SSL

nginx不仅支持 http协议,还支持 https(即在 ssl 协议上传输 http),如果使用了 https,需要安装 OpenSSL 库。安装指令如下:

yum install -y openssl openssl-devel

1
第三步:解压nginx压缩包并安装

将压缩包进行解压,解压指令还是写一下吧:

tar -zxvf nginx-1.20.1.tar.gz

安装到指定路径

 ./configure \--prefix=/usr/local/web-nginx \--sbin-path=/自定义位置/nginx \--conf-path=/自定义位置/nginx.conf \--pid-path=/自定义位置/nginx.pid \

开启ssl模块

./configure --with-http_ssl_module

安装到指定路径

./configure --prefix=/usr/local/web-nginx

指定路径配置ssl

./configure --with-http_ssl_module \
--prefix=/usr/local/yun-nginx

第四步:编译安装nginx
这里和redis的编译安装比较类似,首先在当前目录(/usr/local/nginx-1.10.1)进行编译。输入make即可

make

1
然后回车,如果编译出错,请检查是否前面的4个安装都没有问题。
编译成功之后,就可以安装了,输入以下指令:

make install

————————————————
若需要配置指定的端口 则只需在指定的端口配置ssl

	 listen 9967;listen  9966 ssl;server_name  localhost;

2 实现tcp代理,要装stream模块

./configure --with-stream \
--prefix=/usr/local/configure-nginx```bash
make & make install
stream {server {listen 8848;proxy_pass 10.201.25.1:8848;}server {listen 8000;proxy_pass 10.201.25.1:5236;}server {listen 6379;proxy_pass 10.201.25.1:6379;}server {listen 9000;proxy_pass 10.201.25.1:9000;}server {listen 9099;proxy_pass 10.201.25.2:9909;}server {listen 10000;proxy_pass 19.15.18.83:8080;}}

设置开机自动启动

vim /etc/rc.local

把nginx路径复制进去

/usr/local/configure-nginx/sbin/nginx

在这里插入图片描述

3、nginx记录真实得电脑ip

   location /api/ {proxy_set_header Host $host;proxy_set_header X-Real-IP $remote_addr;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_pass http://192.168.10.160:8081/;}

4、自定义https非443端口 以下是nginx.conf的配置

#user  nobody;
worker_processes  1;#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;pid        logs/nginx.pid;events {worker_connections  1024;
}http {proxy_headers_hash_bucket_size 1024;types_hash_bucket_size 1024;include       mime.types;default_type  application/octet-stream;#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;#keepalive_timeout  0;keepalive_timeout  65;gzip  on;client_max_body_size 2000m;server {listen 8082 ssl;server_name  localhost;ssl_certificate /opt/data/nginx/conf.d/ssl/server.crt;ssl_certificate_key /opt/data/nginx/conf.d/ssl/server.key;ssl_session_cache shared:SSL:1m;ssl_session_timeout 5m;ssl_ciphers HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers on;if ($request_uri ~ "/actuator") {return 403;}#charset koi8-r;#access_log  logs/host.access.log  main;location / {root   dist;if (!-e $request_filename) {rewrite ^(.*)$ /index.html?s=$1 last;break;}index  index.html index.htm;}location /api/ {proxy_pass http://192.168.1.185:8081/;# 这步骤是定义https非443端口的关键proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 非默认端口需要添加$server_portproxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_redirect off;# 这步骤是定义https非443端口的关键}location /sapi/ {proxy_pass http://192.168.1.185:8081/;proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;# 非默认端口需要添加$server_portproxy_set_header Host $host:$server_port; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;proxy_redirect off;}#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;}}}

码云地址:https://gitee.com/yuisuiWork/spring_project_demo/
欢迎交流,一起进步!


http://chatgpt.dhexx.cn/article/xbFatWnj.shtml

相关文章

nginx学习日记

nginx介绍 1.什么是nginx? nginx就是c语言开发的一个高性能HTTP和反向代理Web服务器以及电子邮件(IMAP/POP3)代理服务器 nginx是轻量级的。 2.什么是反向代理? 代理服务可以简单的分为正向代理和反向代理。 正向代理:就是代理…

Nginx学习笔记总结:初次认识 Nginx

2022 年 4月 16 日 百思不得小赵 🔍点此进入博客主页 —— 新时代的农民工 🙊 —— 换一种思维逻辑去看待这个世界 👀 今天是加入CSDN的第1141天。觉得有帮助麻烦👏点赞、🍀评论、❤️收藏啦。 概述 Nginx是一个高性能…

Nginx服务器学习

学习思维导图 Nginx服务架构说明 Nginx采用master-worker的架构,和tomacat的按路径匹配一个节点线程进行处理方式不同,Nginx是直接让worker来先抢夺资源也就是请求,然后在去处理,每个worker保持为一个独立的进程。 Nginx服务的实际…

nginx学习,看这一篇就够了

nginx学习,看这一篇就够了:下载、安装。使用:正向代理、反向代理、负载均衡。常用命令和配置文件,很全_冯安晨-CSDN博客_nginx 代理 文件下载文章目录前言一、nginx简介1. 什么是 nginx 和可以做什么事情2.Nginx 作为 web 服务器3. 正向代理4…

Nginx学习+安装

目录 一、Nginx介绍 二、Nginx下载和安装 1.安装过程 三、了解目录结构 小知识点:树形结构目录展示 四、常用命令 五、配置文件结构 六、具体应用 1.部署静态资源 2.反向代理 了解正向代理 反向代理 3.负载均衡 重中之重:更详细的内容可以访…

Nginx学习与安装

Nginx学习与安装 一、Nginx介绍二、Nginx 安装2.1 安装 pcre-8.44.tar.gz2.2 安装openssl与zlib2.3 安装nginx2.4 Nginx 命令 Nginx 配置文件 一、Nginx介绍 是一个高性能的HTTP和反向代理服务器,同时也是一个IMAP/POP3/SMTP 代理服务器。Nginx以事件驱动的方式编写…

手把手学习nginx基本配置

相信很多人都听过nginx,这个小巧的东西慢慢地在吞食apache和IIS的份额。那究竟它有什么作用呢?可能很多人未必了解。 说到反向代理,可能很多人都听说,但具体什么是反向代理,很多人估计就不清楚了。摘一段百度百科上的描…

Nginx学习整理|入门记录

目录 1. Nginx概述 1.1 Nginx介绍 1.2 Nginx下载和安装 1.3 Nginx目录结构 2. Nginx命令 3. Nginx配置文件结构 4. Nginx具体应用 4.1 部署静态资源 4.2 反向代理 4.3 负载均衡 1. Nginx概述 1.1 Nginx介绍 Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件…

nginx学习总结

简介 静态资源服务器,反向代理,负载均衡等,这些场景下,nginx无处不在。但是本人是在解决单个tomcat承受不了并发量的前提下,才走进的nginx。以下都是个人的总结,如果有不对的话,可以指出来&…

Nginx入门学习

Nginx快速入门 Nginx快速入门,了解什么是Nginx,正向代理,反向代理,负载均衡的概念,学会Nginx的安装和常用的命令,并且能实际场景应用Nginx 什么是Nginx? Nginx (engine x) 是一个高性能的HTTP和…

Nginx学习

目录 1. Nigix简介1.1 什么是 Nginx?1.2 Nginx的作用?1.3 正向代理和反向代理1.4 Windows上安装Nginx1.5 Linux上安装Nginx 2. Nginx常用命令docker 部署nginx 1. Nigix简介 1.1 什么是 Nginx? Nginx是一个高性能的HTTP和反向代理web服务器(随着客户…

Nginx教程(小白必看,看了必会,不看血亏),

Notice 测试请打开浏览器禁止缓存 Notice:再使用前,请打开浏览器 F12 然后网络 然后点禁用缓存,避免nginx配置后磁盘缓存的情况。而且,请确认host没问题。 备注:你本地设置的host对服务器反向代理后的就没用了 一、介绍 概述 Nginx是lgor…

学习Nginx,看完这篇超详细的文章就够了

目录 本文简介一、Nginx的基本概念1.1、Nginx是什么?1.2、Nginx能帮助我们做些什么?1.3、Nginx的特性 二、Nginx的安装2.1、环境介绍2.2、安装Nginx2.3、Docker安装运行Nginx 三、Nginx的常用命令介绍3.1、操作Nginx【Centos6和7通用】3.2、命令总结 四、…

html img调用js,html调用js变量 如何在html中输出js文件中的变量

html页面代码中怎么调用js变量?html页面代码中怎么调用js变量,例如 在html代码中插入js代码: a=取浏览你把index1.js 中的onReady 去掉,把index1.js改成 function index1() { 请确定他们在一个文件夹下,然后就可以直接调用了 直接把两段代码合并 。 希望能给你帮助。 要实现…

如何在html中使用js

1.使用script标签&#xff0c;将js代码写入标签(html和js没有分离) 在 HTML 中&#xff0c;JavaScript 代码必须位于 <script> 与 </script> 标签之间。 <script>console.log(Number.MAX_VALUE)var s hello worldvar n 10var u undefinedvar l nullvar …

html中script相互调用,HTML调用JavaScript

仅使用HTML和CSS创建动态网页很困难。例如&#xff0c;仅使用CSS是无法很好完成下拉菜单和滑入式页面的&#xff0c;这是一项很难的技术。此时就需要使用JavaScript&#xff0c;那么如何在HTML中调用JavaScript&#xff1f;下面本篇文章就来给大家介绍一下在HTML中调用JavaScri…

html5文档加载前调用函数,html调用javascript外部文件显示函数未定义

在html的head标签中调用了外部js文件&#xff0c;路径没有错&#xff0c;浏览器中也没有报错。但是触发事件调用函数的时候却显示loginWarm函数未定义。怎么回事&#xff0c;查了很久都没有一个正确的解决办法 οninput"setCustomValidity();" οnchange"loginW…

html引入css js,html中如何调用css和js?

html中如何调用css和js&#xff1f;下面本篇文章就来给大家介绍一下在html中调用css和js的方法。有一定的参考价值&#xff0c;有需要的朋友可以参考一下&#xff0c;希望对大家有所帮助。 在HTML中调用css的方法 行内样式 在HTML标签的style属性中设定CSS样式 行内样式 内嵌式…

在HTML文档中使用JavaScript的方法详解

在HTML文档中使用JavaScript的方法详解 本文详细介绍&#xff0c;在HTML文档&#xff08;也称为HTML页面或网页&#xff09;中使用JavaScript脚本代码的多种方法。 假设要用JS生成字符☆直角三角形 实现JavaScript代码为&#xff1a; function RightTriangle(){ for(var j1;j&…

html中怎么引用js语言,HTML怎么引用javascript?

仅使用HTML和CSS创建动态网页很困难&#xff1b;例如&#xff0c;仅使用CSS是无法很好完成下拉菜单和滑入式页面的。此时就需要使用JavaScript。下面本篇文章就来给大家介绍一下在html中引用javascript的方法&#xff0c;希望对大家有所帮助。 在HTML中引用JavaScript的方法有两…