二级域名带ssl证书代理

在nginx配置文件,增加代理配置服务

    server {
listen 443 ssl; #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
server_name api.dshvv.com; #二级域名。
root html;
index index.html index.htm;
ssl_certificate /home/ssl/dshvv.pem; #将domain name.pem替换成您证书的文件名。
ssl_certificate_key /home/ssl/dshvv.key; #将domain name.key替换成您证书的密钥文件名。
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。
ssl_prefer_server_ciphers on; location / {
proxy_pass http://127.0.0.1:7777; #代理地址
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;
proxy_set_header X-Forwarded-Port $server_port;
}
}
意思是 遇到api.dshvv.com请求的时候,将代理至本地的7777服务。


需要注意的是,需要在域名服务上,开启二级域名的解析

普通二级域名配置

因为ssl证书是针对以及域名的,二级域名提示无效风险,但是不影响使用,也就是说二级域名用https请求会提示ssl证书无效
阿里有统配子域名的证书,但是要花钱,每年1-2k,还是算了。但是我们可以分别声情,这是免费的
如果二级域名不配置证书,代理可以做如下新增

server {
listen 80;
server_name api.dshvv.com; #二级域名。
root html;
index index.html index.htm; location / {
proxy_pass http://127.0.0.1:7777; #代理地址
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;
proxy_set_header X-Forwarded-Port $server_port;
}
}

当然最好还是都加上,两种配置都写上,这样使用的时候有的选择

最优方案

1、配置两个域名证书

2、同时支持http和https

一下是最终的配置文件

#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 {
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; server {
listen 443 ssl; #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
server_name localhost; #将localhost修改为您证书绑定的域名,例如:www.example.com。
root html;
index index.html index.htm;
ssl_certificate /home/ssl/dshvv.com_nginx/cert.pem; #将domain name.pem替换成您证书的文件名。
ssl_certificate_key /home/ssl/dshvv.com_nginx/cert.key; #将domain name.key替换成您证书的密钥文件名。
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。
ssl_prefer_server_ciphers on;
location / {
root html; #站点目录。
index index.html index.htm;
}
} server {
listen 443 ssl; #SSL协议访问端口号为443。此处如未添加ssl,可能会造成Nginx无法启动。
server_name api.dshvv.com; #二级域名。
root html;
index index.html index.htm;
ssl_certificate /home/ssl/api.dshvv.com_nginx/cert.pem; #将domain name.pem替换成您证书的文件名。
ssl_certificate_key /home/ssl/api.dshvv.com_nginx/cert.key; #将domain name.key替换成您证书的密钥文件名。
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4; #使用此加密套件。
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; #使用该协议进行配置。
ssl_prefer_server_ciphers on; location / {
proxy_pass http://127.0.0.1:7777; #代理地址
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;
proxy_set_header X-Forwarded-Port $server_port;
}
} server {
listen 80;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / {
root html;
index index.html index.htm;
} #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;
} # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#} # deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
} server {
listen 80;
server_name api.dshvv.com; #二级域名。
root html;
index index.html index.htm; location / {
proxy_pass http://127.0.0.1:7777; #代理地址
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;
proxy_set_header X-Forwarded-Port $server_port;
}
} # another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias; # location / {
# root html;
# index index.html index.htm;
# }
#} # HTTPS server
#
#server {
# listen 443 ssl;
# server_name localhost; # ssl_certificate cert.pem;
# ssl_certificate_key cert.key; # ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 5m; # ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on; # location / {
# root html;
# index index.html index.htm;
# }
#} }

nginx二级域名代理的更多相关文章

  1. nginx二级域名反向代理

    nginx二级域名反向代理 添加两个开发测试的域名 test.xxx.com :8088 testmobile.xxx.com: 8089 内网地址:127.0.0.1 外网地址:127.0.0.1 ...

  2. nginx二级域名配置自动跳转到一级域名

    nginx二级域名配置自动跳转到一级域名 rewrite配置内容: if ($http_host !~ "^www.aaa.com$") { rewrite ^(.*) http: ...

  3. nginx二级域名配置

    CentOs下nginx二级域名配置 域名配置文件 命名规则:XXX.域名信息.conf 配置文件路径:etc/nginx/conf.d/xxxx.conf 配置文件内容:server { liste ...

  4. Nginx二级域名及多Server反向代理配置

    Nginx强大的正则表达式支持,可以使server_name的配置变得很灵活,如果你要做多用户博客,那么每个用户拥有自己的二级域名也就很容易实现了. 注:nginx反向代理同一ip多个域名,给head ...

  5. nginx二级域名配置[CentOS]

    目录 背景 域名配置 服务器配置 Nginx配置 页面访问生效 背景 只有一台云服务器,部署了自己写的后端管理系统,又需要部署下自己的个人博客平台,但是只有一个域名,想要合理的利用下二级域名. 域名配 ...

  6. nginx二级域名指向不同文件项目配置

    需要使用泛域名解析, 并且加上空的判断,以保证没有二级域名的也可以访问 核心配置 server_name ~^(?<subdomain>.+)\.caipudq\.cn$;if ( $su ...

  7. centos 安装php-fpm , nginx二级域名配置 ,但为什么必须要 域名提供商 哪里解析新的二级域名一下 才能用呢?

    yum -y install php-fpm php-mysql(当然还有其它扩展) /etc/init.d/php-fpm restart (重启php-fpm) /etc/php.ini (php ...

  8. Django+Vue+Nginx+Https域名代理访问

    Django+Vue使用Nginx实现Https域名的安全访问 前端 VUE 前端访问自身域名: https://demo.com,后序使用 Nginx 代理至后端 直接访问后端https:api会无 ...

  9. nginx二级域名配置到文件夹

    user root; worker_processes ; events { worker_connections ; } http { include mime.types; default_typ ...

  10. nginx 二级域名跳转

    server { listen ; server_name m.aaoo.cn; #charset koi8-r; #access_log logs/host.access.log main; rew ...

随机推荐

  1. 云备份技术解析:云容灾 CT-CDR 关键技术介绍

    本文分享自天翼云开发者社区<云备份技术解析:云容灾 CT-CDR 关键技术介绍>,作者:沈****军 1.CDP+存储快照,实现秒级RPO (1)CDP技术:云容灾CT-CDR(Cloud ...

  2. DPDI(Dispatch PDI)kettle调度管理平台发布新版本了

    Dispatch PDI最新版本发布! 我们很高兴地宣布,Dispatch PDI的全新轻量级版本现已在官网上线!这款专为高效ETL任务调度和监控设计的平台,将为您的数据处理带来前所未有的便捷. 立即 ...

  3. php 常用bc函数

    bcadd - 加法,2个任意精度数字的加法计算bcsub - 减法bcmul - 乘法bcdiv - 除法bcpow - 乘方bcmod - 取模bcsqrt - 求二次方根bccomp - 比较两 ...

  4. PhpStorm - 本地动态调试-下载配置xdebug扩展

    PhpStorm - 本地动态调试-下载配置xdebug扩展 00x01 查看phpinfo <?php phpinfo(); 00x02下载扩展前查看Architecture 如果Archit ...

  5. 【HUST】网络攻防实践|6_物联网设备固件安全实验|实验三 FreeRTOS-MPU 保护绕过

    文章目录 实验三 FreeRTOS-MPU 保护绕过 实验要求 子任务1 逆向分析StartFreeRTOS 打印 Flag 函数名称和地址 用于提权的函数名称和地址 填写的代码 模拟运行截图 **附 ...

  6. PC端自动化测试实战教程-5-pywinauto 操作PC端应用程序窗口 - 下篇(详细教程)

    1.简介 上一篇宏哥主要讲解和介绍了如何获取PC端应用程序窗口信息和如何连接窗口对其进行操作的常用的几种方法.今天宏哥接着讲解和分享一下窗口的基本操作:最大化.最小化.恢复正常.关闭窗口.获取窗口状态 ...

  7. HMM (隐马尔可夫) 推导 (下) - 参数估计 (EM)

    HMM (隐马尔可夫) 推导 (下) - 参数估计 (EM) 回顾 HMM 上篇介绍了HMM这样的一种时序类模型, 即描述了一些观测现象的产生, 是由我们很难观测到的 "隐变量因子" ...

  8. K8s进阶之MetalLB实现LoadBalancer

    概述 LoadBalancer官网文档:https://kubernetes.io/zh-cn/docs/concepts/services-networking/service/#loadbalan ...

  9. dotnet-trace 分析.net程序性能

    在现代 .NET 开发中,性能分析和故障诊断是确保应用程序稳定性和高效性的关键步骤. 本文将介绍如何使用 dotnet-trace 工具进行 .NET Core 应用的性能跟踪,并结合 PerfVie ...

  10. ubuntu20.04下VSCode无法输入中文解决方法

    解决方法:重新安装VSCode. 我一开始是在ubuntu商店下载的,结果上网查了了下,商店里的VSCode是阉割版的,想要输入中文就要重新安装. 安装流程:先删除再安装. 1.可以在商店里已安装界面 ...