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这时我 ...
随机推荐
- 【小程序开发】文本text-overflow属性的使用
text-overflow原本是CSS3的一个属性,在微信小程序中也支持. text-overflow文本溢出显示省略号~ 注:使用text-overflow时,需要设置固定的宽度才起作用,所以该元素 ...
- 什么是静态内部(Static Inner)类,语法要注意什么?
4静态内部类(Static Inner Classes) 马克-to-win:这里的内部类的static,意思是它可以不用实例化外部类,就自己单独被实例化,单独存在(有点像生活中的办公室和办公桌(独立 ...
- ubantu14.04系统设置无法正常使用
方法一:执行命令: sudo apt-get install ubuntu-desktop方法二:如果系统设置打不开,请重新安装gnome-control-centersudo apt-get ins ...
- vue中Promise对象用法
Promise.all([ 需要异步一起执行的方法---------先做的事 ]).then(res=>{ 后做的事(先做的事已经做好了) }) 举栗子: Promise.all([ this. ...
- 使用element UI el-upload组件实现视频文件上传及上传进度显示方法总结
实现效果: 上传中: 上传完成: 代码: <el-form-item label="视频上传" prop="Video"> <!-- acti ...
- docker方式安装zabbix
这个示例展现了如何运行支持MySQL数据库的Zabbix server,基于Nginx web服务器运行Zabbix web接口,以及Zabbix Java gateway. 1. 启动一个空的MyS ...
- 如何写好一份晋升PPT(附PPT模板)
又到了每年晋升述职的时间,在过去的5.6年里,我以评委身份参与了大量的晋升述职(主要是前端,也包括客户端和测试),也辅导了许多(100+)组内外的同学,指导他们书写和完善PPT.过程中我发现大家有许多 ...
- python入门基础—安装
说明:0基础,那就先练习python语言基础知识,等基础知识牢固了,再对各开发平台分别进行介绍.这里只介绍两个简单而又容易搭建开发平台Anaconda和pycharm Anaconda是一个开源的Py ...
- C++中 指针的指针是什么?指针的引用又是什么?你可能需要看看这篇文章
关于变量的定义 我们都知道变量的定义包括一个基本数据类型(base type)和一组声明符,在同一条定义语句中,输入基本数据类型不同,但是声明符的形式却可以不同. //如:i是一个int的整数,a是一 ...
- 《图解UE4渲染体系》Part 1 多线程渲染
上回书<Part 0 引擎基础>说到,我们粗略地知道UE4是以哪些类来管理一个游戏场景里的数据的,但这仅仅是我们开始探索UE4渲染体系的一小步. 本回主要介绍UE4渲染体系中比较宏观顶层的 ...