Django+Vue+Nginx+Https域名代理访问
Django+Vue使用Nginx实现Https域名的安全访问
前端 VUE
- 前端访问自身域名: https://demo.com,后序使用 Nginx 代理至后端
直接访问后端https:api会无证书认证:NO_SSL_Authentication_INVALID
后端 Django
- 使用sslserver模块启动项目,使其荥api转为https
安装:python install django-sslserver
导入setting.py: INSTALLED_APPS'sslserver',
允许主机ip:ALLOWED_HOSTS = ['*']
启动django:python manager.py runsslserver
Nginx代理
server {
listen 443 ssl; # 监听ssl 端口 443
server_name mydemo.com; # 监听服务器域名
# 指定域名安全证书:
ssl_certificate cert.pem; # 将证书放在conf目录下
ssl_certificate_key cert.key; # 将证书放在conf目录下
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_session_timeout 5m;
# 代理本地vue项目
location / {
root html; # 项目所在文件
index index.html index.htm; # 首页文件
}
# 反向代理后端地址 :以此需要后端服务以api开头
location /api {
proxy_set_header X-Real-IP $remote_addr;
proxy_pass https://localhost:8080; # 后端ip:端口
}
}
# 80端口重定向443
server {
listen 80;
server_name mydemo.com;
rewrite ^/(.*)$ https://$host$1 permanent;
}
基础信息
- windows 环境下, nginx-1.20版本;
- Nginx参数文档:https://blog.csdn.net/weixin_48404074/article/details/121317859
- Nginx官网:http://nginx.org/
常见异常:
浏览器 F12,API请求报错:Mixed-content;
原因:后端为http地址,前端请求https;两者互不通。
处理:后端使用sslserver启动后端 https模式报错2:net::ERR_SSL_PROTOCOL_ERROR
原因:前端https 访问后端https接口没有证书认证。
处理:使用nginx代理至后端。
Django+Vue+Nginx+Https域名代理访问的更多相关文章
- django+vue+nginx生产环境部署配置
部署环境: 1. linux redhat 7.1 2.python 3.6.3 3. vue 4. nginx 5. gunicorn 6. supervisord 安装: 一. 基础环境安装 1. ...
- CentOS7 nginx+tomcat实现代理访问java web项目让项目支持jsp和php
如果安装了Tomcat查看版本方法如下:注意:先进到tomcat的bin目录下(cd /tomcat目录/bin),在执行./version.sh [root@izbp bin]# ./version ...
- nginx https反向代理tomcat
Context体现在server.xml中的Host里的<Context>元素,它由Context接口定义.每个<Context>元素代表了运行在虚拟主机上的单个Web应用. ...
- nginx https反向代理 tomcat
前端nginx配置 server { listen ; server_name localhost; listen ssl; ssl_certificate /usr/local/nginx/sslk ...
- 解决 nginx https反向代理http协议 302重定向localtion到http问题
location /rest { #proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remot ...
- Oracle:使用nginx做为代理访问
nginx 必须启用 启用 --with-stream 模块. 可下载源码编译. nginx.conf的配置: worker_processes ; events { worker_connectio ...
- nginx配置本地域名反向代理实现本地多域名80访问
什么是反向代理? 代理:通过客户机的配置,实现让一台服务器代理客户机,客户的所有请求都交给代理服务器处理. 反向代理:用一台服务器,代理真实服务器,用户访问时,不再是访问真实服务器,而是代理服务器. ...
- 使用nginx做反向代理
很多同学喜欢用nginx做反向代理访问某些网站,原因大家都懂的,今天老高记录一下如何使用nginx做反向代理以及如何配置和优化nginx的反向代理. 准备工作 首先,你需要一个稳定的国外的便宜的VPS ...
- 关于vue2用vue-cli搭建环境后域名代理的http-proxy-middleware
在vue中用http-proxy-middleware来进行接口代理,比如:本地运行环境为http://localhost:8080但真实访问的api为 http://www.baidu.com这时我 ...
随机推荐
- 【Android开发】Android 颜色透明度换算
透明度 透明度分为256阶(0-255),计算机上用16进制表示为(00-ff). 透明就是0阶,不透明就是255阶,如果50%透明就是127阶(256的一半当然是128,但因为是从0开始,所以实际上 ...
- 鸿蒙JS 开发整理
目录 一.前言: 二.鸿蒙 JS UI框架 2.1 JS UI特性 2.2 架构 2.3 新的UI框架结构 三.API 四.最后 一.前言: 5月25日,华为对外宣布计划在6月2日正式举办鸿蒙手机发布 ...
- python---if、while、for
if语句 当出现选择情况的时候,就需要用到if语句. # 第一种语法 if 条件: # 冒号将条件和结果分开,不可缺少 结果1 结果2 # 条件为真执行结果1,然后结果2:否则直接结果2 # 第二种语 ...
- Kafka 使用-安装
Kafka 使用-安装 官方网站 http://kafka.apache.org/ 官方文档 Kafka 是什么? Apache Kafka is an open-source distributed ...
- ArrayList扩容问题
今天上午上课在看JavaSE的面经,其中有问关于ArrayList和LinkedList的区别,就突然思考到,既然ArrayList是采用数组形式存储数据,对比我们自己使用到的数组,为什么ArrayL ...
- Mysql学习day2随笔
--jion on 连接查询 --jion where 等值查询 建议先用jion on再用where过滤 --inner jion 返回交集 --left join 无论右表是否匹配,都会从左表返回 ...
- go interface{}使用
先上代码 func In(haystack []interface{}, needle interface{}) (bool, error) { sVal := reflect.ValueOf(hay ...
- Java开发中关于资源路径获取问题
描述 在开发中经常会读取配置文件,在Web开发中大多数都是在项目路径下.核心的API类或者是Controller异或是jsp页面等,基本都是基于web应用的相对路径,很少去操作绝对路径,但是在客户端. ...
- windwos 下编译 qsqlibase 驱动(firebird 和 interbase)
编译环境:mingw-w64 使用qtcreator打开ibase.pro,ibase.pro位置例如:R:\qt-everywhere-opensource-src-4.8.5\src\plugin ...
- MySQL远程连接、用户授权
目录 MySQL远程连接 创建用户.授权 MySQL添加用户.删除用户.授权及撤销权限 MySQL可授予用户的执行权限 MySQL远程连接 远程连接 授权 常见权限表 相关库:mysql 相关表:us ...