从零开始部署个人网站(四)--ssl证书

本文详细介绍如何在Ubuntu系统中使用Let’s Encrypt为网站部署HTTPS,包括安装配置Let’s Encrypt、生成SSL证书、配置Apache支持HTTPS及自动跳转等功能。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

为了让我们的网站更加安全,防止运营商注入广告,防止用户信息外泄,https已经逐渐变得大众化。

虽然有些ssl证书提供商需要收费,他们往往都是面对多个域名的情况下,如果只是单个域名,使用免费的let’s Encrypt也能将我们网站支持https。

生成SSL证书

1、 下载安装let’s encrypt

sudo apt-get install letsencrypt

2、是有webroot插件,自动生成证书

letsencrypt certonly --webroot -w /var/www/example -d example.com
# 注意 /var/www/example 是你网址的根目录,域名可以能直接访问到的

原理是在 /var/www/example 目录下创建临时文件 .well-known/acme-challenge ,通过这个文件来证明对域名 example.com 的控制权,然后 Let’s Encrypt 验证服务器发出 HTTP 请求,验证每个请求的域的 DNS 解析,验证成功即颁发证书。(这里默认/var/www/example为网站根目录,请酌情修改)

生成的 pem 和 key 在 /etc/letsencrypt/live/ 目录下。其中 fullchain.pem 是接下来要用到的 ssl_certificateprivkey.pemssl_certificate_key

3、 开启apache中SSL模块

a2enmod ssl

4、配置apache文件
可以新建一个新的conf专门来监听https的443端口,然后添加上

<VirtualHost *:443>
······

SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/example.com/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/example.com/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/example.com/chain.pem

······
</VirtualHost>

添加完

a2ensite XXXX
service apache2 restart

4、 腾讯云开放443端口
安全组添加443端口的访问权限
这时候访问我们的https://的网站,就能正常访问了。

5、 添加自动跳转
完成https://的访问之后,我们希望能够实现访问http网站的时候,能够自动跳转到我们https的网站对应页面,这个是怎么实现的呢?只要在apache中配置晚间中,需要一些配置

方法一

Redirect permanent / https://www.example.com/

方法二

在Apache配置文件编辑网站虚拟主机,并添加以下设置。您也可以在.htaccess文件中添加在你的网站上的文档根目录相同的设置。

  RewriteEngine On
  RewriteCond %{HTTPS} off
  RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

如果您想具体URL重定向到HTTPS。使用以下设置。例如,如果有人试图访问always-secure.html这个页面会跳转到 https 的页面。用户必须有SSL访问的URL。

RewriteEngine On
RewriteRule ^always-secure.html$ https://www.example.com/always-secure.html [R=301,L]

OK,这样就完成了ubuntu中项目配置的各种问题了。


最后如果需要优化ssl证书,参考网站配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值