Nginx下配置,SSL For Free网站获取Let's Encrypt免费SSL证书

2024-05-31 03:18

本文主要是介绍Nginx下配置,SSL For Free网站获取Let's Encrypt免费SSL证书,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

一、背景

    注册了个小程序,发现后台必须走HTTPS协议,可以在 ssl for free 免费申请证书,尝试了下,并且配置到了服务器。

二、申请证书

SSl For Free

1.输入域名创建证书

创建证书。

2.证书文件获取

选择手动上传验证文件,获取证书

手动上传验证文件

获取验证文件,并在网站跟目录创建目录mkdir -p .well-known/acme-challenge,把下载的文件上传到该目录

验证文件上传

3.证书下载

证书下载下来包含三个文件private.key,certificate.crt,ca_bundle.crt.

Nginx 的ssl配置要求证书文件是一个,需要把certificate.crt,ca_bundle.crt合并.我刚开始根据这个教程进行合并处理Nginx ssl,用linux下的cat命令进行合并,一直报错

SSL: error:0906D066:PEM routines:PEM_read_bio:bad end line

合并的有问题,证书文件的尾部分隔符出错.我改成使用notepad++,对两个文件进行合并处理.结果如下图

三、Nginx 配置

1.方式一(http跳转到https配置):

配置参考如下

#
# The default server
#
server {listen       443;server_name  test.domain.com;index index.php default.html default.htm default.php;root         /data/test.domain.com;ssl on;ssl_certificate /data/ssl/cert_chain.crtssl_certificate_key /data/ssl/test.domain.com.key;ssl_session_cache    shared:SSL:1m;ssl_session_timeout  5m;ssl_ciphers  HIGH:!aNULL:!MD5;ssl_prefer_server_ciphers  on;# Load configuration files for the default server block.include /etc/nginx/default.d/*.conf;location / {try_files $uri $uri/ /index.php?$query_string;}error_page 404 /404.html;location = /40x.html {}error_page 500 502 503 504 /50x.html;location = /50x.html {}location ~ \.php$ {fastcgi_pass   127.0.0.1:9000;fastcgi_index  index.php;fastcgi_param  SCRIPT_FILENAME  $document_root$fastcgi_script_name;include        fastcgi_params;}
}

注意,一定要开放443端口

因为浏览器默认是走http协议,所以建议在写个配置文件,重定向到当前https协议的web.

配置如下

server{listen 80;server_name  test.domain.com;rewrite ^/(.*) https://test.domain.com/$1 permanent;
}

重启nginx 。.

2.方式二(http,https同时可以访问配置):

配置如下

server{listen    80;#listen    443 ssl;    # 关键配置项1server_name  test.domain.com;#ssl_certificate       /data/ssl/cert_chain.crt;   # 关键配置项2#ssl_certificate_key   /data/ssl/test.domain.com.key;  # 关键配置项3index index.php;root  /www/webroot/test.domain.com;access_log  /www/webroot/test.domain.com/access.log  main;location / {index index.php index.html;if ( !-e $request_filename){rewrite ^/(.*)$ /index.php?s=$1 last;break;}}location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ {expires      30d;}location ~ .*\.(js|css)?$ {expires      30d;}location ~ .*\.(php|php5)?$ {fastcgi_pass  127.0.0.1:9000;fastcgi_index index.php;include fastcgi.conf;}
}

重启nginx 。
 

这篇关于Nginx下配置,SSL For Free网站获取Let's Encrypt免费SSL证书的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1017315

相关文章

Nginx安全防护的多种方法

《Nginx安全防护的多种方法》在生产环境中,需要隐藏Nginx的版本号,以避免泄漏Nginx的版本,使攻击者不能针对特定版本进行攻击,下面就来介绍一下Nginx安全防护的方法,感兴趣的可以了解一下... 目录核心安全配置1.编译安装 Nginx2.隐藏版本号3.限制危险请求方法4.请求限制(CC攻击防御)

nginx中端口无权限的问题解决

《nginx中端口无权限的问题解决》当Nginx日志报错bind()to80failed(13:Permissiondenied)时,这通常是由于权限不足导致Nginx无法绑定到80端口,下面就来... 目录一、问题原因分析二、解决方案1. 以 root 权限运行 Nginx(不推荐)2. 为 Nginx

一文详解如何使用Java获取PDF页面信息

《一文详解如何使用Java获取PDF页面信息》了解PDF页面属性是我们在处理文档、内容提取、打印设置或页面重组等任务时不可或缺的一环,下面我们就来看看如何使用Java语言获取这些信息吧... 目录引言一、安装和引入PDF处理库引入依赖二、获取 PDF 页数三、获取页面尺寸(宽高)四、获取页面旋转角度五、判断

nginx 负载均衡配置及如何解决重复登录问题

《nginx负载均衡配置及如何解决重复登录问题》文章详解Nginx源码安装与Docker部署,介绍四层/七层代理区别及负载均衡策略,通过ip_hash解决重复登录问题,对nginx负载均衡配置及如何... 目录一:源码安装:1.配置编译参数2.编译3.编译安装 二,四层代理和七层代理区别1.二者混合使用举例

Java JDK1.8 安装和环境配置教程详解

《JavaJDK1.8安装和环境配置教程详解》文章简要介绍了JDK1.8的安装流程,包括官网下载对应系统版本、安装时选择非系统盘路径、配置JAVA_HOME、CLASSPATH和Path环境变量,... 目录1.下载JDK2.安装JDK3.配置环境变量4.检验JDK官网下载地址:Java Downloads

nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析(结合应用场景)

《nginx-t、nginx-sstop和nginx-sreload命令的详细解析(结合应用场景)》本文解析Nginx的-t、-sstop、-sreload命令,分别用于配置语法检... 以下是关于 nginx -t、nginx -s stop 和 nginx -s reload 命令的详细解析,结合实际应

Linux下进程的CPU配置与线程绑定过程

《Linux下进程的CPU配置与线程绑定过程》本文介绍Linux系统中基于进程和线程的CPU配置方法,通过taskset命令和pthread库调整亲和力,将进程/线程绑定到特定CPU核心以优化资源分配... 目录1 基于进程的CPU配置1.1 对CPU亲和力的配置1.2 绑定进程到指定CPU核上运行2 基于

Spring Boot spring-boot-maven-plugin 参数配置详解(最新推荐)

《SpringBootspring-boot-maven-plugin参数配置详解(最新推荐)》文章介绍了SpringBootMaven插件的5个核心目标(repackage、run、start... 目录一 spring-boot-maven-plugin 插件的5个Goals二 应用场景1 重新打包应用

Java中读取YAML文件配置信息常见问题及解决方法

《Java中读取YAML文件配置信息常见问题及解决方法》:本文主要介绍Java中读取YAML文件配置信息常见问题及解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要... 目录1 使用Spring Boot的@ConfigurationProperties2. 使用@Valu

Jenkins分布式集群配置方式

《Jenkins分布式集群配置方式》:本文主要介绍Jenkins分布式集群配置方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1.安装jenkins2.配置集群总结Jenkins是一个开源项目,它提供了一个容易使用的持续集成系统,并且提供了大量的plugin满