nginx配置反向代理服务器,实现在https网站中请求http资源
网站使用nginx作为服务器,协议从http升级为https的注意事项。
具体升级步骤请点击搜索
1、首先,修改宝塔面板配置
选择配置文件,http请求重定向为https。所有80端口请求都重定向为https请求
# server代表的是nginx其中的一个服务器
server
{
listen 80; # listen表示监听端口号80 (http)
listen 443 ssl http2; # 表示监听443 端口号(https)
server_name www.abc.com abc.com ip地址; # server_name表示服务器名称,现在同时匹配3个
index index.php index.html index.htm default.php default.htm default.html; # 匹配/www/wwwroot/abc/index.html
root /www/wwwroot/abc; # abc表示路径,网站的起始位置为/www/wwwroot/abc
#HTTP_TO_HTTPS_START
if ($server_port !~ 443){ # 端口号不等于443,则重写url到https://当前主机/后面所有路径,并永久重定向(permanent)
rewrite ^(/.*)$ https://$host$1 permanent;
}
2、接着配置代理服务器
# 代理serve图片服务器api
location /api/ {
# 通过代理,访问https://ip|域名/api/...时,代理到http://你的ip或域名:3004/api/...
proxy_pass http://你的ip或域名:3004; # 注意`http://你的ip或域名:3004`末尾不添加`/`,这样的话`/api/`将会添加到3004后面
proxy_redirect off;
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;
}
# 代理音乐服务器api
# /musicapi/,必须加上后面的/,不然代理服务不成功
location /musicapi/ {
# 访问https://你的ip或域名/musicapi/...,
# 代理到http://你的ip或域名:3005/...,不包括/musicapi
proxy_pass http://你的ip或域名:3005/; # 这里末尾添加了`/`,将不会添加`/musicapi/`在端口号后面
proxy_redirect off;
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;
}
3、完成上面所有配置后
http网站升级到https网站,浏览器可正常访问网站,网站请求的api接口,需要从
http://ip|域名:3005/lyric?id=32507038修改为http(s)://ip|域名/musicapi/lyric?id=32507038。这里的流程就是,把原本请求的:3005用/musicapi替换掉,然后浏览器发出并重定向成https开头的请求,接着nginx发现你的请求中带有/musicapi,就把你的请求转发给匹配上的http://你的ip或域名:3005/服务器。
4、最后还要在原来的index.html文件里添加
# 把http链接升级为https
<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />
5、或者可以操作服务端的话,也可以在nginx配置里添加
server
{
listen 80;
listen 443 ssl http2;
......
#升级可以升级为https的连接,兼容http
add_header Content-Security-Policy "upgrade-insecure-requests;connect-src *";
}
nginx配置反向代理服务器,实现在https网站中请求http资源的更多相关文章
- Nginx配置反向代理服务器
首先,在阅读<深入理解Nginx模块>后,大体了解了配置反向代理服务器一些常见的配置.如下进行说明:” l Nginx worker进程个数 语法: worker_processes n ...
- apache 配置反向代理服务器
前几天实验了下 nginx 配置反向代理服务器.虽然 nginx 的安装很麻烦,但是用起来倒是很简单.不过组里没人用过 nginx,apache 服务器大家倒是蛮熟,为了减少 ops team 的工作 ...
- nginx配置http强制跳转https
nginx配置http强制跳转https 网站添加了https证书后,当http方式访问网站时就会报404错误,所以需要做http到https的强制跳转设置. 一.采用nginx的rewrite方法 ...
- 【大型网站技术实践】初级篇:借助Nginx搭建反向代理服务器
一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...
- 配置Nginx作为反向代理服务器
最近在实习公司的开发一个项目,项目是前后端彻底分离的项目,前端项目和后端项目各监听着特定的端口号,显然不是80的通用端口,为了不在地址栏上输入IP+端口号的形式,我们可以使用Nginx作为反向代理服务 ...
- Nginx搭建反向代理服务器过程详解
一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从 ...
- 【翻译】使用nginx作为反向代理服务器,uWSGI作为应用服务器来部署flask应用
最近在看关于Docker和Nginx方面的内容,先于在Docker上开发以及部署python应用自然要先能够在本机上部署,其中找到一篇文章写的最为详细并且实验成功,所以在此翻译转载过来以备后需.[原文 ...
- Nginx搭建反向代理服务器
[大型网站技术实践]初级篇:借助Nginx搭建反向代理服务器 一.反向代理:Web服务器的“经纪人” 1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受int ...
- Nginx 搭建反向代理服务器过程详解
1.1 反向代理初印象 反向代理(Reverse Proxy)方式是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet ...
- 【转】Nginx搭建反向代理服务器过程详解
阅读目录 1.1 反向代理初印象 1.2 反向代理的作用 2.1 Nginx是神马? 2.2 Nginx的应用现状 2.3 Nginx的核心特点 3.1 准备一个ASP.NET网站部署到IIS服务器集 ...
随机推荐
- xlsx 前端导出Excel
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Java+selenium自动爬取网站内容并写入本地
目的:本文主要描述如何使用Java+selenium爬取58同城招聘页,并记录指定职位的招聘公司名保存到本地 一.首先创建一个maven工程,配置依赖包 1 <dependencies> ...
- 在Unity3D中开发的角色视觉系统插件Sight Detect System
Sight-Detect-System 这款Sight Detect System插件由本人用Unity3D所开发,它在游戏中可以成为角色的视觉感知系统. 如果你想开发潜行类游戏时,那么这款视觉插件非 ...
- snorkel SentenceNgramViewer 标记时出现 Integrity Error
Snorkel使用SQLAlchemy作为数据管理工具,在本地会生成一个.db文件,现有操作与.db文件中已有的记录重复,违反了数据库主键不能重复的性质 解决方式: You can load a la ...
- ssh 修改端口号 --centos 7
1 vim /etc/ssh/sshd_config Port XXXXX #XXXXX 为要修改的端口号,默认是22,直接在新的行添加Port XXXXX即可. 2 systemctl re ...
- Java 中的内存分配
Java 中的内存分配 Java 程序运行时,需要在内存中分配空间.为了提高运算效率,就对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据方式和内存管理方式. 一.栈:储存局部变量 局部变量 ...
- kali 下安装tplmap
kali 下安装tplmap 1. 安装kali下的python2的pip工具 kali2020版及以上, 输入python2命令会执行python2, python3也存在. 但pip默认是pip3 ...
- PLC入门笔记7
梯形图与指令表的转换 后缀表达式 开头是MPS 结尾是MPP 中间就是MRD啦!!!! MPS 存入堆栈(将目前累加器的内容存入堆栈.(堆栈指针加一))将当前数据栈顶数据复制一份到辅助栈 栈深度+1 ...
- 更多Linux实用命令
更多实用命令 进程相关 当程序运行在系统上时,我们称之为进程(process).想监测这些进程,需要熟悉 ps/top 等命令的用法.ps 命令好比工具中的瑞士军刀,它能输出运行在系统上的所有程序的许 ...
- 阿里云Linux服务器安装Maven实战教程
下载地址 https://maven.apache.org/download.cgi 文件上传 把下载的文件上传到阿里云服务器 /usr/local/software 的目录(使用工具) window ...