Nginx配置https免费证书

Let‘s Encrypt Let'sEncrypt——是一个由非营利性组织互联网安全研究小组(ISRG)提供的免费、自动化和开放的证书颁发机构(CA),简单的说,就是为网站提供免费的SSL/TLS证书。互联网安全研究小组(ISRG)ISRG是美国加利福尼亚州的一家公益公司,成立于2013年5月,第一个项目是Let'sEncrypt证书颁发机构。Let’sEncrypt使用ACME协议来验证您对给定域名的控制权并向您颁发证书。使用前提域名,它会生成指定域名的证书在域名指向的服务器上能访问https。... 阅读详情

yum install certbot

https取代http是大势所趋,https的好处本文不在赘述,很多公司和机构都在推进这一进程,Apple公司甚至规定,iOS上的App应用必须使用https。因此,正是受到Apple的限制,我们的站点,几乎是所有的站点,接近上百个,都支持了https。

  • 如何获取SSL证书?
  1. 自签名证书

我们可以自己为自己颁发SSL证书,这样的证书满足为http加密的要求,但这样的证书缺少权威性,不会被浏览器所承认。在客户端完全可控的情况下,例如没有经过浏览器,或者使用其他的框架,使用自签名证书也是可行的。此时你只需在客户端将自签名证书加入信任列表;或者修改客户端的证书认证流程,牺牲SSL证书的安全性,让自签名证书能够通过认证。

  1. Startcom

大多业务情况下,我们的SSL证书都需要得到浏览器的承认才有意义,因此必须寻找权威的证书颁发机构。SSL证书被分为很多种类,不同的证书颁发机构有不同的划分方法,大致分为企业型、专业版、增强型、高级版、域名型等等,而这些SSL证书基本都是收费的,根据安全性、权威性等差异,每年的收费从几千到上万不等。

免费的https证书也是有的,首先找到的是startcom机构,一家以色列公司,它提供免费的有效期为一年的https证书。但我们使用了startcom提供的证书不到一年,悲剧就发生了。startcom被国内的360公司的沃通秘密收购,隐瞒了主导权与架构的转移,还伪造SHA-1凭证的分发日期(主要浏览器开发商要求所有 CA 在 2016 年 1 月 1 日之后停止签发 SHA-1 证书,然而沃通 CA 在 2016 年 1 月 1 日之后仍然签发了 SHA-1 证书,通过故意倒填日期,将这些证书伪装成是在 2016 年前签发的),再加上WoSign的免费凭证服务有bug,广大浏览器均不再信任startcom所颁发的证书,包括WoSign的证书。据称,startcom目前已正式宣布将会停止证书业务并吊销现有的根数字证书,也就是说,startcom已经GG了。

  1. 云计算

为了推广自家业务,提供一站式服务,很多云计算厂商都已经直接提供SSL证书服务,其中也包含免费的域名型DV证书,这项业务使得SSL证书的获取变得容易很多,大大推进了HTTPS的普及度。但是这类免费证书的使用限制较多。例如不支持泛域名;一个主域名最多只能申请20个证书;一个云计算账号最多只能申请20个证书;一个证书只能匹配一个明细域名等等。总之,云计算服务商提供的免费证书比较适合个人和小微企业使用。试想,如果没有这些限制,还会有多少人花钱买证书呢。

  1. Letsencrypt

由于云计算厂商对于免费SSL证书的种种限制,也为了避免绑定在某个云计算平台。后来找到的免费证书颁发机构是letsencrypt。它是开源,并且完全免费的,它颁发的证书已经被几乎所有的浏览器所认可。

  • 如何部署和更新SSL证书?

SSL证书的有效期是由证书颁发机构设定的,通常会被设为一年。然而,对于letsencrypt,它的证书有效期很短,只有90天有效期,因此证书的更新频率较高。所幸的是,letsencrypt能够较为方便地实现证书的自动化更新。

  1. 环境

操作系统:CentOS 7

Webserver:Nginx

  1. 安装letsencrypt
  1. yum install git python

  1. git clone https://github.com/letsencrypt/letsencrypt

如若在执行git clone命令时出现以下错误:

  1. Cloning into 'letsencrypt'...
  2. fatal: unable to access 'https://github.com/letsencrypt/letsencrypt/': Peer reports incompatible or unsupported protocol version.

须执行以下命令升级nss、curl、libcurl:

yum update -y nss curl libcurl

使用以下命令运行一次客户端,将自动检查更新并升级(letsencrypt启动后,总是会自动检查更新并升级,除非使用--no-self-upgrade参数显示指定),如果一切正常(事实上,升级后letsencrypt在某些系统、某些云服务商的机器上常常不能正常运行,因为涉及到各种源,版本依赖等问题),将会显示完整的帮助文档。

  1. cd letsencrypt
  2. ./letsencrypt-auto --help all
  1. letsencrypt简介

letsencrypt客户端插件的功能包括两个部分:认证和安装。

认证插件通过certonly命令启用,认证功能用于确认你是域名的所有者,并为你的域名获取证书,证书被放置在你的域名所在服务器的/etc/letsencrypt/live/[domain]目录。如果你一次性对多个域名进行认证,则这些域名将共用一个证书文件。

./letsencrypt-auto certonly

证书安装插件通过install命令启用,用于在你的服务器上安装证书,证书安装功能会修改服务器上webserver的配置文件,使得webserver能够提供https服务。

./letsencrypt-auto install

如果要使用同时支持获取证书和安装证书的插件来为你的webserver获取并安装证书,使用run命令,run命令是letsencrypt的默认命令,因此可以略去。run命令也可以分别为证书获取和证书安装指定不同的插件。

  1. ./letsencrypt-auto run
  2. ./letsencrypt-auto

Plugin

认证

安装

备注

认证方式 (端口)

apache

Y

Y

自动获取和安装证书,适用于Apache2.4 on OSes with libaugeas0 1.0+。

tls-sni-01 (443)

webroot

Y

N

通过webserver的root目录认证来获取证书,适用于处于运行状态的webserver。

http-01 (80)

nginx

Y

Y

自动获取和安装证书,适用于Nginx。

tls-sni-01 (443)

standalone

Y

N

通过letsencrypt自带的standalone服务来获取证书,standalone服务将占用服务器的80或443端口,这就意味着服务器本身的webserver需要处于关闭状态,除非它使用特殊端口。

http-01 (80) or tls-sni-01 (443)

DNS plugins

Y

N

通过修改DNS记录来认证域名所有者以获取证书,这是使用letsencrypt为通配符域名获取证书的唯一方式。

dns-01 (53)

manual

Y

N

以用户自定义的方式获取证书,根据提示指令,用户自己来完成域名认证。即使用交互式或脚本钩子的方式获取证书。

http-01 (80), dns-01 (53) or tls-sni-01 (443)

由于篇幅所限,本文仅对最为基本,也是最关键的webroot、standalone两个证书获取命令进行说明,Apache、Nginx、DNS Plugins、Manual命令本文将不做介绍。

3.1 webroot

webroot通过http文件下载的方式来进行域名认证。通过webroot命令,在获取证书的过程中不用关闭webserver,并且不能关闭webserver。因为webroot将在webserver的对应域名的root目录生成验证文件,并通过webserver提供的http服务执行下载以对域名进行认证,webroot命令依赖于webserver本身。

命令:

./letsencrypt-auto certonly -m dancen@163.com --webroot -w /home/site/dancen -d src.dancen.com

可直接使用:./letsencrypt-auto certonly -d  src.dancen.com(域名)

certonly:获取证书

-m:邮箱,证书即将到期时,该邮箱将收到通知,--email

--webroot:获取证书使用的插件是webroot

-w:对应域名root目录的地址,--webroot-path

-d:要认证的域名,--domains

如果要对使用同一root目录的多个域名进行认证,直接增加-d即可:

./letsencrypt-auto certonly --webroot -w /home/site/dancen -d src.dancen.com -d dl.dancen.com

如果要对使用不同root目录的多个域名进行认证,增加一系列的-w -d -d即可:

./letsencrypt-auto certonly --webroot -w /home/site/dancen -d src.dancen.com -d dl.dancen.com -w /home/site/other -d src.other.com -d dl.other.com

webroot命令会在对应域名的${root-path}/.well-known/acme-challenge目录创建一个临时文件,例如对于src.dancen.com,该目录即为/home/site/dancen/.well-known/acme-challeng。letsencrypt服务器会对该临时文件发起http请求,以验证域名。因此,webserver必须得到正确的配置,能够响应letsencrypt服务器对该临时文件的下载请求。你甚至可以配置一个名为.well-known的location节点,专门用于webroot认证。

Nginx配置nginx.conf:

  1.    server {
  2. listen80;
  3.         server_name src.dancen.com dl.dancen.com;
  4.         access_log off;
  5.         root /home/site;
  6.         error_page 404 /404.html;
  7.         error_page 500502503504 /50x.html;
  8.         location /.well-known {
  9.             root /home/site/dancen;
  10.         }
  11.         location / {
  12. index index.html index.htm;
  13.         }
  14. }

证书获取成功后,letsencrypt会明确提示证书放置的位置,即前文所提到的/etc/letsencrypt/live目录。对于src.dancen.com,其证书所在路径为:

/etc/letsencrypt/live/src.dancen.com/privkey.pem    #证书的私钥

/etc/letsencrypt/live/src.dancen.com/cert.pem         #服务端证书

/etc/letsencrypt/live/src.dancen.com/chain.pem       #证书链的根证书/中间证书

/etc/letsencrypt/live/src.dancen.com/fullchain.pem  #完整的证书内容,即服务端证书cert.pem和根证书/中间证书chain.pem的合并内容。

Nginx要用到是privkey.pem和fullchain.pem两个文件,获取证书后,修改Nginx配置如下,重启Nginx后便可启用https了。

Nginx配置nginx.conf:

  1.    server {
  2. listen80;
  3. listen443 ssl on;
  4.         server_name src.dancen.com dl.dancen.com;
  5.         ssl_certificate /etc/letsencrypt/live/src.dancen.com/fullchain.pem;
  6.         ssl_certificate_key /etc/letsencrypt/live/src.dancen.com/privkey.pem;
  7.         access_log off;
  8.         root /home/site;
  9.         error_page 404 /404.html;
  10.         error_page 500502503504 /50x.html;
  11.         location /.well-known {
  12.             root /home/site/dancen;
  13.         }
  14.         location / {
  15. index index.html index.htm;
  16.         }
  17.     }

证书获取成功后,/etc/letsencrypt/renewal目录下产生的文件也需要留意一下:

/etc/letsencrypt/renewal/src.dancen.com.conf

该文件记录了对应域名在证书获取时的命令信息,后文中将会提到的,在执行renew命令更新证书时,将按照该文件所配置的证书获取方式来进行证书更新,与本次获取证书的方式一致。

对于通过webroot重新获取证书和更新证书的情况,Nginx配置前后没有变化,不需要修改,但重启Nginx仍然是必要的,因为Nginx不会重新加载SSL证书。

3.2 standalone

standalone是一个独立的服务,可以看作是一个小型的webserver,它使用80或443端口来和letsencrypt服务器进行通信。因此,在使用standalone获取证书时,需要关闭正在运行的webserver,除非webserver使用的是80端口和443端口之外特殊的端口。

命令:

./letsencrypt-auto certonly --standalone --preferred-challenges tls-sni --email dancen@163.com -d src.dancen.com

--standalone:获取证书使用的插件是standalone

--preferred-challenges tls-sni:使用443端口,如果要使用80端口,使用--preferred-challenges http指定,或者移除--preferred-challenges命令,因为standalone默认就是使用80端口

3.3 管理证书

3.3.1 查看letsencrypt在当前服务器获取的证书

命令:

./letsencrypt-auto certificates

返回:

  1. Found the following certs:
  2.   Certificate Name: src.dancen.com
  3.     Domains: src.dancen.com, dl.dancen.com
  4.     Expiry Date: 2018-09-1919:53:00+00:00 (VALID: 30 days)
  5.     Certificate Path: /etc/letsencrypt/live/src.dancen.com/fullchain.pem
  6.     Private Key Path: /etc/letsencrypt/live/src.dancen.com/privkey.pem

返回信息包括一系列的证书名称、证书包含的域名、证书的过期时间,以及证书、私钥路径。需要注意的是,较老版本的letsencrypt并不支持certificates命令。

3.3.2 操作证书

通过--cert-name来指定证书的名称,并对证书执行操作,可选的操作有run、certonly、certificates、renew、delete。

命令:

./letsencrypt-auto certonly --cert-name src.dancen.com

run:获取和安装证书

certonly:获取证书

certificates:查看和--cert-name指定的名称匹配的证书信息

renew:更新快要过期的证书

delete:删除证书

3.3.3 撤销证书

通过revoke命令,指定证书路径(请注意,这里不是指定证书名称),撤销该证书。

命令:

./letsencrypt-auto revoke--cert-path /etc/letsencrypt/live/src.dancen.com/cert.pem --reason keycompromise

--cert-path:证书的路径

--reason:撤销证书的原因,可选

证书被撤销以后,通过delete命令来删除证书相关的文件:

./letsencrypt-auto delete--cert-name src.dancen.com

3.3.4 更新证书

证书的更新命令是renew,renew命令会在本机找出所有的证书,并检查证书的过期时间,它只会对有效期不足30天的证书执行更新。如果证书不需要更新,它不会和letsencrypt服务器产生通信,因此,renew命令可以频繁地执行而不会受到letsencrypt服务器的连接次数限制的影响。也是基于这一特点,可以在crontab设置定期任务,频繁地执行renew操作,确保证书不会过期。

renew在更新证书时,是依照/etc/letsencrypt/renewal目录下的配置来运行的。也就是说,原来是通过webroot方式获取的证书,其更新方式也是webroot;原来是通过standalone方式获取的证书,其更新方式也是standalone。

需要补充的是,通过standalone方式来更新证书比较不稳定,letsencrypt常常在运行过程中卡死。而且在运行standalone时,需要关闭webserver。因此,使用standalone方式来更新证书时,不宜将renew操作写入crontab定期执行,其一旦卡死,webserver的启动将受到影响。

命令:

  1. ./letsencrypt-auto renew
  2. ./letsencrypt-auto renew --dry-run
  3. ./letsencrypt-auto renew --force-renewal

renew:对有效期不足30天的证书执行更新

--dry-run:测试续期命令, 使用这个参数并不会真正续期证书

--force-renewal:强制更新证书,即使证书有效期超过了30天

证书更新后,需要重启Nginx,因此可以在letsencrypt添加前置命令和后置命令,前置命令用于关闭Nginx,后置命令用于启动Nginx。

命令:

./letsencrypt-auto renew --pre-hook "/usr/sbin/nginx -s stop" --post-hook "/usr/sbin/nginx"

--per-hook:前置命令

--post-hook:后置命令

3.3.5 关闭letsencrypt自动更新

letsencrypt每次运行都会首先执行自动更新操作,然后才会执行用户指定的操作,这就产生了一些问题。

首先是自动更新操作的耗时问题,特别是在通过standalone来获取证书或更新证书时,首先得关闭webserver,如果letsencrypt的自动更新用时太久,就意味着webserver将长时间处于关闭状态,这势必对业务造成影响。这里引出的另一个问题是,webroot和standalone两种证书获取方式,那种更好?我的经验是,推荐webroot。一来webroot操作可以在webserver运行期间执行,对webserver的影响最小;二则是在实际操作中,webroot方式更加稳定,而standalone方式常常有执行过程中卡住的情况。

其次,升级后letsencrypt在某些系统、某些云服务商的机器上常常不能正常运行,因为涉及到各种源,版本依赖等问题。

因此,除非有必要,否则建议在启动letsencrypt时通过--no-self-upgrade指令关闭自动更新。

renew报错:

  1. Automated renewal failed:
  2. … …
  3. Could not find a version that satisfies the requirement certbot==0.24.0 (from -r /tmp/tmp.GY8lPazOus/letsencrypt-auto-requirements.txt (line 206)) (from versions: 0.6.0, 0.7.0, 0.8.0, 0.8.1, 0.9.0, 0.9.1, 0.9.2, 0.9.3, 0.10.0, 0.10.1, 0.10.2, 0.11.0, 0.11.1, 0.12.0, 0.13.0, 0.14.0, 0.14.1, 0.14.2, 0.15.0, 0.16.0, 0.17.0, 0.18.0, 0.18.1, 0.18.2, 0.19.0, 0.20.0, 0.21.0, 0.21.1, 0.22.0, 0.22.1, 0.22.2, 0.23.0)
  4. No matching distribution found for certbot==0.24.0 (from -r /tmp/tmp.GY8lPazOus/letsencrypt-auto-requirements.txt (line 206))
  5. Had a problem while installing Python packages.

以上便是letsencrypt自动更新报错的一种情况,版本依赖出了问题。面对这种情况,可以直接删除更新后的letsencrypt,然后使用git命令从新获取letsencrypt,并且将其回退至一个较旧的版本,例如ce4e00569e6d8ed3d51c5a078d4281bec5f8e5f0版本。之后再执行letsencrypt时,带上--no-self-upgrade参数,关闭自动更新就可以了。

命令:

  1. rm -rf letsencrypt
  2. git clone https://github.com/letsencrypt/letsencrypt/
  3. cd letsencrypt
  4. git reset--hard ce4e00569e6d8ed3d51c5a078d4281bec5f8e5f0
  5. ./letsencrypt-auto--no-self-upgrade renew

webroot or standalone?

这里引出的另一个问题是,webroot和standalone两种证书获取方式,那种更好?我的经验是,推荐webroot。

一来webroot操作可以在webserver运行期间执行,证书获取后再重启webserver即可,对webserver的影响最小;而在使用standalone获取证书时,必须先关闭webserver,如果证书获取时间过长,或者证书获取过程中出现错误需要处理,这期间webserver长时间无法对外服务,会对业务造成影响。

二则是在实际操作中,webroot方式更加稳定,而standalone方式常常有执行过程中卡住的情况。

第三,当站点启用了CDN后,域名的ip解析地址将不再是服务器所在地址,standalone模式会受到影响,无法获取证书,而webroot模式依然能够正常工作。

【环境配置】申请StartSSL免费CA证书,配置Nginx使用https访问,强制http跳转到https 个人用户,可以选择免费的DV证书。 StartSSL的免费DV证书:有效期一年,可以续,也就是永久免费。 申请步骤: 1、https://startssl.com  注册,邮箱接收验证码,生成客户端证书,下载双击导入证书到浏览器。 2、重启浏览器,登录startssl.com,进入控制台,选择申请免费证书,验证域名网站所有权; 3、最多填入5个网站域名,比如:domain.com w 阅读详情

相关推荐

【项目实战】Nginx配置Https证书

Nginx配置https证书是常规操作,Nginx支持crt+key或者pem证书格式。

奶爸的编程之路,也就一周冷个三天 3174

Nginx的Https配置及代理api接口配置

nginx配置htpps

我是福强的博客 3100

Nginx:利用 FreeSSL 申请(Https)免费证书的技术指南

本文介绍了如何通过FreeSSL平台申请免费SSL证书并配置到服务器。主要内容包括:注册FreeSSL账号、域名授权与验证、下载证书文件;详细讲解了在Nginx和Apache服务器上的证书安装步骤;还提供了证书自动续期的方法。该指南帮助开发者和小型企业零成本实现HTTPS加密,提升网站安全性,操作流程清晰完整,适合快速部署SSL证书的各类用户。

木头 1732

nginx配置免费https证书教程

在当今互联网环境下,HTTPS已成为网站安全的标配,它通过SSL/TLS协议为网站数据传输提供加密,保障用户信息的安全。申请并部署免费SSL证书,不仅能够提升网站的专业形象,还能增强用户信任。本文将详细介绍如何在知名免费SSL证书提供商ohttps申请免费SSL证书,并指导如何在Nginx上安装和使用证书。

who_im_i的博客 1526

使用免费的SSL证书将nginx配置的普通网站修改为HTTPS网站

已经在Centos8系统中使用nginx搭建了网站;但是该网站没有实现HTTPS协议不安全;现需要将网站升级为HTTPS站点。

提供C#相关开发 、云计算、运维测试、网络安全相关技术分享与服务,有意向可联系。 772

【迁移学习】域对抗迁移网络 DANN

Domain-Adversarial Training of Neural Networks

这个博客太懒了什么都没说 8417

如何为nginx配置https(免费证书)

前言:   给http协议申请ssl免费证书,还是比较主流的一种方式,但是逐渐得一些浏览器不支持自签名的证书了。毕竟这是为了使用者及平台都变得安全的方式,所以无可厚非的,而且也有很多网站即使不使用商业付费证书也可以免费申请自己网站的ssl证书的。所以这种方式只是作为一种记录和参考或者可以在某些老版本或者个别浏览器上使用这种自签名https证书。 正文: 如果你使用了nginx作为反向代理,那么本文可以教你如何将https配置在nginx,这样即使你的后端服务是http也完全没有问题. 一、我们需

songfelicity的博客 3450

WslRegisterDistribution failed with error_ 0x8007019e、0x800701bc、0x80370102

Ubuntu 20.04.4 LTS 报错解决方案。分别涉及到三个错误:WslRegisterDistribution failed with error: 0x8007019e、WslRegisterDistribution failed with error: 0x800701bc和WslRegisterDistribution failed with error: 0x80370102

一起加油~ 5万+

nginx+php 使用免费证书配置https

下载证书 在阿里云下载免费证书,下载方法参考以下链接: https://mp.youkuaiyun.com/postedit/104157618 (注:最后下载的时候,下载nginx的证书) 下载下来的证书解压后,得到两个文件 2862135_www.anidea.com.pem、2830135_www.anidea.com.key。(你解压出来的文件名跟我的肯定不一样。但是都是以 .pem和 .key结尾的...

qq_22356995的博客 1006

PyTorch 深度学习实战(28):对比学习(Contrastive Learning)与自监督表示学习

本文实现了基于对比学习的自监督表征学习框架,通过 InfoNCE 损失在 CIFAR-10 数据集上学习到具有判别性的特征表示。实验表明,仅使用线性分类器即可达到 82% 以上的验证准确率,证明了对比学习的有效性。在下一篇文章中,我们将深入计算机视觉的核心任务之一——《目标检测与 YOLO 实战》,探讨如何利用深度学习实现高效的目标检测系统。

m0_60414444的博客 2383

MCNP 减方差技巧(最全)

MCNP的减方差技巧,核心在于不显著增加计算时间的前提下,通过修改模拟过程来降低结果的统计误差。尤其适用于,这类问题中粒子很难到达探测器区域,直接模拟效率极低栅元重要性是常用的减方差技巧,该方法主要对计算模型的不同区域定义不同的重要性数值。当粒子从重要性低的区域废物重要性高的区域,产生更多粒子,增大统计量;当从重要性高的区域进入重要性低的区域,会进行,增快计算效率。n= 中子,N;光子,P;电子 Exi= 栅元i的重要性I=栅元总数项目IMP卡是必须的,除非使用了WWN卡如果粒子进入0。

chencheng1127的博客 925

nginx配置免费证书的https访问方式

目录1.登录[freessl](https://freessl.cn/)并注册2.创建免费ssl证书3. 创建对应的txt解析4.进行检测5.下载证书6.配置nginx 443端口7.输入https进行验证 1.登录freessl并注册 2.创建免费ssl证书 输入自己的域名(在别的云平台上创建的) 默认填入的是注册的邮箱,选择浏览器生成 3. 创建对应的txt解析 进入云平台,添加云解析...

cpa0701的博客 1501

当AI换脸遇上内容审核:Facefusion NSFW检测的技术伦理与用户自主权之争

本文探讨了Facefusion开源AI换脸工具中NSFW检测机制的技术伦理困境与用户自主权之争。分析了其多层次防御机制的技术实现与社区规避方法,揭示了开源软件在安全与自由之间的平衡难题,并提出了分层权限设计等社区实践方案。

weixin_29165725的博客 683

生成nginx免费SSL证书,应用配置https

一、生成nginx免费SSL证书 我的nginx是用docker运行的,首先下载nginx的镜像。 docker pull nginx home目录下创建nginx文件夹,放置nginx配置文件。 nginx文件夹下创建cert目录,放置证书。 证书生成命令: openssl req -new -x509 -nodes -out server.crt -keyout server.key 执行命令后生成了证书文件如下: 二、应用配置https user root; worker_p.

FinelyYang的专栏 2611

Python爬虫实战:实时监控美国SEC官网文件更新,助你第一时间掌握市场动态

在资本市场中,信息就是财富。美国证券交易委员会(SEC)官网公开了大量公司披露文件,涵盖财报、招股说明书、内幕交易等重要信息。对投资者、分析师及法律合规人员来说,实时监控这些公开文件具有重要价值。

2201_76125261的博客 594

【QT开发教程】使用Qt进行NFC编程

近场通信(NFC,Near Field Communication)技术广泛应用于现代设备中,例如智能手机、支付终端和门禁系统。Qt提供了一套完整的NFC模块,使开发者可以轻松地在应用程序中实现NFC功能。本文将介绍如何在Qt中进行NFC编程,包括基本概念、使用方法以及一些实际的示例。

科技改变人类,技术成就未来 1469

nginx配置https(免费证书)

一、我们需要什么证书之前写过一篇《tomcat https配置方法(免费证书)》的简书(想看的可以去我的主页里面看下,这两篇之间还是有许多相关联的知识的~),里面有提到过常用证书的分类,其中nginx使用的就是PEM格式的证书,我们将其拆分开就是需要两个文件,一个是.key文件,一个是.crt文件.二、怎样获取免费证书这里提供两个方法:第一种:如果你是windows用户,且有.keystore格式的

frankenjoy123的专栏 1万+

文献综述三大痛点用AI轻松解决!借助Gemini 3 Pro搞定检索难、阅读慢、框架乱问题(附 AI 提示词)

4)“漏斗式”结构:先介绍宏观领域的研究现状,再缩小范围,聚焦于与你课题直接先关的子领域,深入探讨与你研究变量直接相关的文献, 指出前人没做过、没做全或结论有矛盾的地方,再顺势提出你的研究课题,这种结构逻辑最清晰,能直接引导读者发现你研究的必要性。想要有针对性的搜到相关文献,必须先把模糊的研究题目拆解成精准的检索语言,这个时候就需要建立一个关键词矩阵,如核心词、同义词、学术术语、上下位词,以及对应的英文表达。请围绕【我的研究主题/关键词】,检索近5年发表的高被引的中英文文献,优先选择顶刊综述/论文。

智能AI让学术科研更容易 277

阿里云SSL免费证书配置Nginx的https

一、官网申请免费证书 由于免费一个阿里云账号只能申请1次免费证书,且证书为单域名DVSSL,因此建议先购买自己的域名:https://wanwang.aliyun.com https://www.aliyun.com/product/security/markets/aliyun/product/cas ![image.png](https://img-blog.csdnimg.cn/img_convert/382b74a33120ccd47468bda2b06c6047.png#align=left&

小红帽的博客 326

Statistics and Machine Learning Toolbox

Statistics and Machine Learning Toolbox(带书签),MATLAB统计学习工具

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

阿里云购买免费https证书并用nginx配置代理详解(2020年9月)

现在各大网站都转型https协议了,连ios app上架都必须走https协议了,那么如何将我们普通的小网站统一变成https呢? https证书都不便宜,现在服务器,域名基本都在阿里云买了,https证书阿里云也有卖,但我们小码农要选择免费的,说下我说下目前的购买方法,因为官网界面每年都在变 首先登陆阿里云->控制台,点左上角,弹出的一堆选项中选择这个: 懒得找可以直接输入网址:https://common-buy.aliyun.com/?spm=5176.2020520163.0.0..

lianzhang861的博客 2639

大中型超市收银系统(可直接运行)

光步前台收银系统系统功能:商品销售、商品退货、挂单、收银员权限、会员销售、单品取消、整单取消、商品查询、脱机销售、脱机数据上传,基本资料下载,开钱箱、小票打印、收款结算,支持多币种付款方式(现金、储值卡、礼券、微信等),支持多种促销。运行环境:.net 4.0登陆信息用户名:1001 密码:123456内置商品信息,商品编码可输入00001000 - 00010000,测试效果相关功能键F5 结算 F9挂单 F11商品查询 F8退货 Insert单品取消 Del整单取消 F12开钱箱F2 会员 Ctrl+Z退出系统 Home 锁屏 相关源码待公开

阿里云Nginx HTTPS免费证书配置

原文地址:https://help.aliyun.com/knowledge_detail/95491.html 首先去阿里云申请免费证书,然后进行域名绑定,这里就不做详细描述了,按照提示一步一步操作就可以。 在证书控制台下载Nginx版本证书。下载到本地的压缩文件包解压后包含: .crt文件:是证书文件,crt是pem文件的扩展名。 .key文件:证书的私钥文件(申请证书时如果没有选择自...

lvfl的博客 558

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

阿里云免费DV证书Nginx配置https

首先去阿里云申请一个证书, 这里说是购买,支付0元, 选择免费型DV证书购买既可,然后可以看到证书列表里面有个空的证书,补全信息即可 接下来输入个人信息 下面会要CSR, 一般选择系统生成 完成之后提交审核,这里的审核就是要验证网址是不是自己的 点击进度会弹出验证项目,复制里面的txt值,到解

rosekissyou的博客 6719

Nginx 配置 Https 免费证书访问

配置HTTPS 现在做博客或者做网站没有 https 已经不行了,就记录一下我在腾讯云配置 https 的过程吧,非常简单,1个小时就可以了。 还涉及到 http 访问自动转发到 https 访问路径。同时把不带 www 的顶级域名转发到带 www 的二级域名上,有利于 SEO. 申请证书 不管是腾讯云还是阿里云都提供免费的证书使用,不过有效期是 1 年,到时候我们重新申请就可以了。我们以腾讯云为...

weixin_34356138的博客 242
上一篇: android-为手机设置全局代理
下一篇: 关于androidstudio添加依赖文件失败解决方法
carden_coder
博客等级 码龄10年 141粉丝 87原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

carden_coder

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值