ngnix 入门 二,docker启动nginx, 安装ssl 证书,使用配置文件,映射后端服务 ,提供给前端项目访问

搭建生产环境真不是人做的事,特别是对于一知半解的人。仅以此文献给各位技术人

说一下背景:项目前后端分离,前端 vue3 、小程序端 ,后端 go 提供服务。
微信小程序需要使用 https 请求。 这就必须让我们想到nginx 了

想要达到的目的: 针对特定端口 请求 只能用https , 并且支持部署vue 项目

省略 docker、nginx 的安装步骤
如要参考,请看 nginx 入门

开始正文, 安装ssl 证书,让请求变成 https

关于ssl 证书,可以去阿里云申请。

1、新建配置文件

这一步很重要, 重点关注 root 这里的路径必须是容器内的路径。
在这里插入图片描述
其他内容请直接照搬下面的内容。改也只改域名和公钥证书和私钥证书
d

user  nginx;
worker_processes  auto;error_log  /var/log/nginx/error.log notice;
pid        /var/run/nginx.pid;events {worker_connections  1024;
}http {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  /var/log/nginx/access.log  main;sendfile        on;#tcp_nopush     on;keepalive_timeout  65;#gzip  on;client_max_body_size 200m; # 文件大小无限制include /etc/nginx/conf.d/*.conf;server {listen 80;server_name www.xxx.top;location / {root /usr/share/nginx/html;index index.html index.htm;}}server {listen 8080;server_name www.xxx.top;location / {root /usr/share/nginx/html;index index.html index.htm;}}server {listen 443 ssl;server_name www.xxx.top;ssl_certificate /etc/nginx/ssl/证书公钥;ssl_certificate_key /etc/nginx/ssl/证书私钥 ;location /api/ {proxy_pass http://xxx.top:9009;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_set_header X-Forwarded-Proto $scheme;}}	
}

2、启动nginx 容器

docker run --name nginx-container -p 80:80 -p 443:443 \-v /opt/nginx/ssl/证书公钥:/etc/nginx/ssl/证书公钥 \-v /opt/nginx/ssl/证书私钥:/etc/nginx/ssl/证书私钥 \-v /opt/nginx/conf/nginx.conf:/etc/nginx/nginx.conf \-v /opt/nginx/log:/var/log/nginx \-v /opt/nginx/html:/usr/share/nginx/html \nginx

3 访问成功

接口请求成功
在这里插入图片描述
访问页面成功:
在这里插入图片描述

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

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

相关文章

MySQL学习之DQL语句(数据查询语言)

准备SQL CREATE TABLE student ( id int, -- 编号 name varchar(20), -- 姓名 age int, -- 年龄 sex varchar(5), -- 性别 address varchar(100), -- 地址 math int, -- 数学 english int -- 英语 );INSERT INTO student(id,NAME,age,sex,address,math,english) VALUES (1,…

LeetCode88.合并两个有序数组

题目链接: 88. 合并两个有序数组 - 力扣(LeetCode) 分析:普通的数组合并,这里还可以提供两个其它思路。可以用最笨的办法,把nums2的每个元素都移动到nums1里面,然后做排序,直接用s…

【UE5.1 角色练习】02-添加慢走、快速跑、蹲伏功能

目录 前言 步骤 一、慢走 二、快速跑 三、蹲伏 前言 在上一篇文章基础上(【UE5.1 角色练习】01-使用小白人蓝图控制商城角色移动)继续实现角色的慢走、快速跑以及蹲伏功能 步骤 一、慢走 1. 打开项目设置,添加一个操作映射&#x…

思维导图-VPN

浏览器集成了受信任的机构的证书

linux---信号的捕捉和处理

提示:以下是本篇文章正文内容,下面案例可供参考 一、信号 可以简单理解为信号是一个进程给另一个信号发消息,进程收到对应的信号就执行对应的方法,linux信号可以分为实时信号和非实时信号 1-31为非实时信号,34-64为…

猫狗分类识别④滤波去噪

一、依赖库 pip install opencv-python 二、滤波去噪说明 中值滤波和高斯滤波各有优缺点,哪种滤波方法更好取决于具体的应用场景和图像中的噪声类型。中值滤波对于去除椒盐噪声(即黑白点噪声)特别有效,因为它通过取邻域像素的中…

php抖音详情和关键词搜索api

抖音详情和关键词搜索的 API 可以通过抖音提供的开放平台来获取。以下是使用 PHP 实现的示例代码&#xff1a; 获取抖音视频详情 API&#xff1a; 获取Key和secret请移步 <?php$accessToken YOUR_ACCESS_TOKEN; // 替换为自己的 access_token $itemId YOUR_ITEM_ID; /…

TCP为什么要三次握手,为什么?

TCP&#xff08;Transmission Control Protocol&#xff0c;传输控制协议&#xff09;是一种面向连接的、可靠的、基于字节流的传输层通信协议。为了实现可靠数据传输&#xff0c;TCP 协议的通信双方&#xff0c;都必须维护一个序列号&#xff0c;以标识发送出去的数据包中&…

Typescript高级: 深入理解工厂函数类型

工厂函数类型 代表任意一个类的构造函数【等价JS的构造函数】的函数类型在TS中无法使用 new 来直接实例化一个 function现在通过几个小case来测试下这种类型 1 &#xff09;模拟一个动物的行为接口(简单) 创建几个实现了这个接口的类来展示接口的用途和如何使用它 下面是一个…

计算机精选期刊特辑

文章目录 一、征稿简介二、合作期刊三、投稿咨询四、咨询 一、征稿简介 艾思科蓝依托互联网信息与数据库技术、整合渠道与合作资源&#xff0c;提供EI/SCI/SCIE/SSCI期刊论文的内容审查、发表支持等服务。艾思科蓝与多所知名出版社达成战略合作关系&#xff0c;持续开展合作征…

利用神经网络学习语言(一)——自然语言处理的基本要素

相关说明 这篇文章的大部分内容参考自我的新书《解构大语言模型&#xff1a;从线性回归到通用人工智能》&#xff0c;欢迎有兴趣的读者多多支持。 本文涉及到的代码链接如下&#xff1a;regression2chatgpt/ch10_rnn/tokenizer.ipynb 本系列文章将深入探讨一种应用广泛的神经…

syncthing文件夹同步与版本管理

1 前言 syncthing可以用来同步文件夹里的所有文件&#xff0c;并且有不错的版本管理&#xff0c;基本每次更改文件&#xff0c;20-40秒就被扫描到了&#xff0c;非常丝滑&#xff1b;这次以此来同步obsidian的插件和文件&#xff0c;达到多端同步&#xff1b; 我家里有一台台…

Android HAL到Framework

一、为什么需要Framwork? Framework实际上是⼀个应⽤程序的框架&#xff0c;提供了很多服务&#xff1a; 1、丰富⽽⼜可扩展的视图&#xff08;Views&#xff09;&#xff0c; 可以⽤来构建应⽤程序&#xff0c;它包括列表&#xff08;lists&#xff09;&#xff0c;⽹格&am…

闲话 .NET(4):为什么要跨平台?

前言 .NET Core 有一个关键词就是跨平台&#xff0c;为什么要跨平台呢&#xff1f;Windows 操作系统不香吗&#xff1f;今天我们来聊聊这个 原因一&#xff1a;安全考虑 Windows OS 是闭源的&#xff0c;而 Linux 是开源的&#xff0c;因此有些公司的技术负责人就认为 Linux…

如何将老板的游戏机接入阿里云自建K8S跑大模型(下)- 安装nvidia/gpu-operator支持GPU在容器中共享

文章目录 安装nvidia/gpu-operator支持GPU在容器中共享 安装nvidia/gpu-operator支持GPU在容器中共享 安装 nvidia/gpu-operator遇到两个问题&#xff1a; 由于我们都懂的某个原因&#xff0c;导致某些镜像一直现在不成功。 解决办法&#xff0c;准备一个&#x1fa9c;&#…

车间人员作业行为智能检测 AI视觉在生产车间制造中的应用

车间人员作业行为智能检测系统基于神经网络人工智能视觉算法&#xff0c;车间人员作业行为智能检测通过对车间监控摄像头获取的视频图像进行分析和识别&#xff0c;实现了对人员操作行为的智能检测。系统对工人的操作环节进行分解&#xff0c;根据时间、动作标准等方面制定了规…

MemoryDB 2024 论文分享

论文地址点这里。 TL;DR MemoryDB 通过底层依赖 AWS 内部系统 Multi-AZ Transaction Log 实现了 11 个 9 的持久性保证。 通过依赖 Transaction Log 的 Condition API 和租约机制来实现了一致性和可用性保证。 通过周期性调度 Off-box 节点来外部 Rewrite binlog 避免了内存…

Linux技术分享:Linux设置软链接

简介 软连接是linux中一个常用命令&#xff0c;它的功能是为某一个文件在另外一个位置建立一个不同的链接&#xff0c;类似于windows的快捷方式。作用 当我们需要在不同的目录&#xff0c;使用到相同的文件时&#xff0c;我们不需要在每一个需要的目录下都放一个必须相同的文件…

C语言基础——循环(2)+关机程序

欢迎点赞支持 个人主页&#xff1a;励志不掉头发的内向程序员&#xff1b; 专栏主页&#xff1a;C语言基础&#xff1b; 文章目录 目录 前言 一、for循环的补充 二、循环的嵌套 1、嵌套的介绍 1.1 练习&#xff1a; 题目解析&#xff1a; 优化&#xff1a; 三、goto语句 1、go…

3DEXPERIENCE DELMIA Role: RFP - Fabrication Robot Programmer

Discipline: Robotics Role: RFP - Fabrication Robot Programmer 在虚拟工厂中定义、验证和编程机器人弧焊和密封剂沉积系统 模拟和验证完整的焊接、密封剂沉积和搬运机器人系统&#xff0c;以消除代价高昂的碰撞并优化生产率提供精确的生产就绪型机器人程序&#xff0c;同…