Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >如何在一个服务器上将https设置为一个nginx和一个docker nginx

如何在一个服务器上将https设置为一个nginx和一个docker nginx
EN

Stack Overflow用户
提问于 2021-04-13 20:33:35
回答 1查看 95关注 0票数 0

我在一台服务器上有一个nginx和一个码头nginx。

我已经在一个nginx成功的地方设置了一个Https服务器(端口为80),

我打开https://subdomain1.domain,它将显示网页的成功。

但是我设置了(端口是8080),失败了。

我打开https://subdomain2.domain:8080,它会在下面显示错误。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
This site can’t provide a secure connection
subdomain2.domain sent an invalid response.
Try running Windows Network Diagnostics.
ERR_SSL_PROTOCOL_ERROR

这是我的码头处理信息。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root@server:~/# docker ps
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS              PORTS                                       NAMES
c798c72861fa        13b3                "/bin/bash /app/dock…"   13 days ago         Up 16 minutes       443/tcp, 8000/tcp, 0.0.0.0:8080->8080/tcp   nginx

我有4nginxconf,我不知道如何调整nginx使码头https工作。

  1. 在主机/usr/local/nginx/conf/nginx.conf下面。

用户www;worker_processes auto;worker_cpu_affinity auto;error_log /home/wwwlog/nginx_error.logCrit;pid /usr/local/nginx/log/nginx.pid;#指定可通过此进程打开的最大文件描述符的值。worker_rlimit_nofile 51200;事件{使用epoll;worker_connections 51200;multi_accept off;accept_mutex off;} http {包括mime.types;default_type应用程序/八位流;server_names_hash_bucket_size 128;client_header_buffer_size 32k;large_client_header_buffers 4 32k;client_max_body_size 50m;发送文件on;sendfile_max_chunk 512 k;tcp_nopush on;keepalive_timeout 60;tcp_nodelay on;fastcgi_connect_timeout 300;fastcgi_send_timeout 300;fastcgi_read_timeout 300;fastcgi_buffer_size 64k;fastcgi_buffers 4 64k;fastcgi_busy_buffers_size 128 k;fastcgi_temp_file_write_size 256 k;gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_http_version 1.1;gzip_comp_level 2;gzip_types文本/普通应用程序/javascript应用程序/javascript文本/css应用程序/xml应用程序/xml+rss;gzip_vary on;gzip_proxied过期无缓存无存储私有地址;gzip_disable“MSIE1-6.”;#limit_conn_zone $binary_remote_addr zone=perip:10m;##If enable limit_conn_zone,在服务器部分添加"limit_conn perip 10;“。server_tokens off;access_log off;包括vhost/*..conf;}

宿主

  1. /usr/local/nginx/conf/vhost/subdomain1.domain.conf

服务器{List80默认值;server_name _;索引index.php index.html index.htm;返回301;}服务器{侦听443默认ssl http2;server_name _;索引index.php index.html index.htm;ssl_certificate /usr/local/nginx/conf/vhost/server.crt;ssl_certificate_key /usr/local/nginx/conf/vhost/server.key;返回302;}服务器{List443 ssl http2;server_name subdomain1域;ssl_certificate /usr/local/nginx/conf/vhost/server.crt;ssl_certificate_key /usr/local/nginx/conf/vhost/vhost/server.key;索引index.html index.htm index.php default.html default.htm default.php;root /home/wwwroot/默认/项目名称/后台;包括重写/其他.conf;包括启用-php-pathinfo.conf;位置/{ try_files $uri $uri/ /index.php?$query_string;} location ~.*.(gif\jpg\jpeg\jpeg\png>png_bmp_bmp_swf)${ expires 30d;} location ~.*.(js\css)?${{12小时到期;} location ~ /.众所周知的{ all;} location ~/。{拒绝所有;} access_log /home/wwwlog/www.xxxx.com.log;error_log /home/wwwlog/www.xxx.error.log;}

  1. in docker /etc/nginx/conf.d/[appName].conf

服务器{ gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_comp_level 2;gzip_types文本/普通应用程序/javascript应用程序/x-javascript text/css应用程序/xml文本/javascript应用程序/x-httpd图像/jpeg图像/gif映像/png;gzip_vary off;gzip_disable "MSIE 1-6“;client_max_body_size 200 m;root /app/dist;索引index.html;位置/api/ {重写/api/(.*) /$1中断;proxy_pass https://localhost:8000/;}侦听443 ssl http2;server_name子域2域;ssl_certificate /app/nginx/server.crt;ssl_certificate_key /app/nginx/server.key;#启用ssl;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !aNULL !eNULL!低!3 DSS !EXP !PSK !SRP !DSS !RC4";}

  1. in docker /app/nginx/[appName].conf

服务器{ gzip on;gzip_min_length 1k;gzip_buffers 4 16k;gzip_comp_level 2;gzip_types文本/普通应用程序/javascript应用程序/x-javascript text/css应用程序/xml文本/javascript应用程序/x-httpd图像/jpeg图像/gif映像/png;gzip_vary off;gzip_disable "MSIE 1-6“;client_max_body_size 200 m;root /app/dist;索引index.html;位置/api/ {重写/api/(.*) /$1中断;proxy_pass https://localhost:8000/;}侦听443 ssl http2;server_name子域2域;ssl_certificate /app/nginx/server.crt;ssl_certificate_key /app/nginx/server.key;#启用ssl;ssl_protocols TLSv1 TLSv1.1 TLSv1.2;ssl_prefer_server_ciphers on;ssl_ciphers "EECDH+ECDSA+AESGCM EECDH+aRSA+AESGCM EECDH+ECDSA+SHA384 EECDH+ECDSA+SHA256 EECDH+aRSA+SHA384 EECDH+aRSA+SHA256 EECDH EDH+aRSA !aNULL !eNULL !LOW!3 DSS !MD5 !EXP !PSK !SRP !DSS !RC4";}服务器{侦听8080;server_name子域2域;返回308 https://$server_name$request_uri;}

如何修复子域2.域https设置?

EN

回答 1

Stack Overflow用户

发布于 2021-04-13 21:16:17

您应该:

  1. 停止在主机
  2. 中的nginx服务,再次构建新的容器nginx,并向主机公开端口443。

docker run -d --name containter_name -p 8080:443 image

然后访问:https://subdomain2.domain:8080

应该将ssl_certificate和键复制到容器中。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67085585

复制
相关文章
如何在一个Ubuntu 16.04服务器上将Nginx配置为Web服务器和Apache的反向代理
Apache和Nginx是两种常用的PHP开源Web服务器。当托管具有不同要求的多个网站时,在同一虚拟机上运行它们会很有用。在单个系统上运行两个Web服务器的一般解决方案是使用多个IP地址或不同的端口号。
苏子晨
2018/08/14
4.2K0
如何在一个Ubuntu 18.04服务器上将Nginx配置为Web服务器和Apache的反向代理
Apache和Nginx是目前比较流行的两种常用于PHP的开源Web服务器。当托管具有不同要求的多个网站时,在同一虚拟机上运行它们会很有用。在单个系统上运行两个Web服务器的一般解决方案是使用多个IP地址或不同的端口号。
挺问中原
2018/09/25
4.8K0
为 Docker 中的 Nginx 配置 HTTPS
没有 https 加持的网站会逐渐地被浏览器标记为不安全的,所以为网站添加 https 已经变得刻不容缓。对于商业网站来说,花钱购买 SSL/TLS 证书并不是什么问题。但对于个人用户来说,如果能有免费的 SSL/TLS 证书可用将会是非常幸福的事情!Let's Encrypt 就是一个提供免费 SSL/TLS 证书的网站,由于其证书期限只有三个月,所以需要我们用自动化的方式去更新证书。本文将介绍如何为通过 docker 运行的 nginx 中的站点添加 https 支持,并自动完成证书的更新。本文的演示环境为:运行在 Azure 上的 Ubuntu 16.04 主机(此图来自互联网):
星哥玩云
2022/07/14
1.6K0
为 Docker 中的 Nginx 配置 HTTPS
分享一个 HTTPS A+ 的 nginx 配置
测试地址:https://www.ssllabs.com/ssltest/ nginx 配置,只贴出 SSL 相关,需要将配置放到 server {} 位置。 首先开启 ssl listen 443 ssl;server_name www.example.com;ssl on;ssl_certificate /etc/ssl/certs/ssl-bundle.crt;ssl_certificate_key /etc/ssl/private/www_example_com.key; 其中 ssl-bun
逸鹏
2018/04/09
8360
分享一个 HTTPS A+ 的 nginx 配置
nginx代理+https设置
upstream 你的域名 { server localhost:9876; } server{ listen 80; server_name 你的域名; rewrite ^(.*) https://$server_name$1 permanent; location / { proxy_pass http://你的域名; proxy_set_header
zhangheng
2020/04/29
1.6K0
下一个 nginx?caddy 自动 https 真香
我们通常在部署 web 服务的时候往往会选择 nginx 作为最前面的一个狠角色,它的性能和能力大家也是有目共睹的,反向代理负载均衡等等。而作为后起之秀 caddy 却不被人所熟知,不过渐渐的也开始展露头角。 今天我就来介绍这个 caddy ,为什么我会称它有可能成为下一个 nginx。
LinkinStar
2022/09/01
1.7K0
下一个 nginx?caddy 自动 https 真香
在linux设置一个Nginx反向代理
反向代理是一种服务,它接受客户端请求,将请求发送到一个或多个代理服务器,获取响应,然后将服务器的响应传递给客户端。 由于其性能和可伸缩性,NGINX通常用作HTTP和非HTTP服务器的反向代理。典型的反向代理配置是将Nginx放在Node.js , Python或Java应用程序的前面。 使用Nginx作为反向代理可以为你带来其他好处: 负载均衡-Nginx可以执行负载均衡,以在代理服务器之间分配客户端的请求,从而提高性能,可伸缩性和可靠性。 缓存-使用Nginx作为反向代理,你可以缓存页面的预渲染版本以加
入门笔记
2022/06/02
1K0
使用docker搭建一个简单的nginx服务
2、 在当前目录新建一个html文件作为静态页面 3、 在当前目录执行 docker build -t test:v0.1 . 等待构建完成 4、 执行docker images 查看镜像是否构建成功 5、 执行docker run -d -p 8082:80 test:v0.1 6、 在浏览器访问 127.0.0.1:8082 验证是否能访问到上面新建的那个html内容
fastmock
2022/07/13
4440
docker安装nginx并配置https
配置完后,访问example.com、www.example.com 的请求会被转发到服务器的8090端口
Java那些事儿
2020/07/21
15.6K3
docker安装nginx并配置https
服务器上 nginx 一个ssl证书 一个域名 多个端口
先弄一个ssl证书 下载nginx配置证书后 在服务器上 nginx安装目录 下的server配置字段中加入
余生
2019/10/09
7.3K0
docker安装nginx并部署一个html静态网站
1.搜索安装的 nginx 镜像 docker search nginx 2.在docker hub 中选择合适的版本后进行 镜像拉取 docker pull nginx 3.拉取完成后运行 nginx 容器 ​ 使用 xftp 上传静态页面到服务器的/usr/html 目录下 docker run -di --name=nginx -p 90:80 -v /usr/html:/usr/share/nginx/html nginx # -d 后台运行 # -i 交互方式运行 # --name 自定义容器名
Java那些事儿
2020/07/21
10.7K0
服务器-Nginx-一个简单的例子
直接贴一个几经磨难的简单的例子吧,虽然简单,但是有些不理解的地方,就出了很多错,但是因为这些错误,在对nginx理解稍微深刻了那么一点点的同时,对Linux的操作好像也有了一点进步啊。才知道为什么大家的命令都那么长,而我总是一步步慢慢的来了,一方面不熟,另一方面确实操作的不够多啊。
小二三不乌
2018/08/07
8370
服务器-Nginx-一个简单的例子
Ubuntu Docker 配置 Tomcat 和 Nginx 使用 HTTPS 访问
Ubuntu安装 Docker 使用脚本自动安装 curl -fsSL get.docker.com -o get-docker.sh sudo sh get-docker.sh --mirror Aliyun
星哥玩云
2022/07/13
6820
一个实用的nginx配置
1、httpd.conf server { listen 8081; server_name localhost;
用户5640963
2019/07/26
3320
如何在CentOS 7上将日志模块添加到Nginx
服务器管理不仅仅与服务的初始配置有关。它还涉及监督这些服务并确保它们尽可能顺利地运行。管理员最重要的知识来源之一是日志文件,其中包含有关系统事件的信息。
不会飞的蝴蝶
2018/09/19
8490
记录一个nginx的配置
rt #user xiaoju; worker_processes 32; #error_log logs/error.log notice; #error_log logs/error.log debug; #error_log logs/error.log info; #pid logs/nginx.pid; events { use epoll; worker_connections 512; } worker_rlimit_nofile 512;
用户1225216
2019/05/25
7740
点击加载更多

相似问题

如何在nginx上将HTTPS设置为默认值

25

设置https访问nginx docker容器

12

HTTPS with nginx,fastAPI,docker

142

如何在NGINX上将HTTPS重定向到HTTP?

81

Docker,nginx和一个服务器上的几个站点

24
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文