将 HTTP 改成 HTTPS 主要涉及到获取 SSL/TLS 证书和配置服务器,以下是详细的步骤介绍:
- 购买付费证书:你可以从知名的证书颁发机构(CA)如 Symantec、Comodo、GlobalSign 等购买 SSL/TLS 证书。在购买时,你需要提供一些必要的信息,如域名、公司信息等,然后完成付款流程。CA 机构会对你提交的信息进行审核,审核通过后会为你颁发证书。
- 使用免费证书:Let's Encrypt 是一个免费的、自动化的、开放的证书颁发机构,被广泛使用。你可以使用 Certbot 等工具来获取 Let's Encrypt 证书,Certbot 可以自动完成证书的申请、安装和更新过程。以在 Ubuntu 系统上使用 Certbot 获取证书为例,你可以通过以下命令安装 Certbot:
sudo apt-get update
sudo apt-get install certbot python3-certbot-nginx
然后运行以下命令来获取证书:
sudo certbot --nginx -d yourdomain.com -d www.yourdomain.com
其中yourdomain.com
是你的域名。
- 编辑 Nginx 配置文件:通常 Nginx 的配置文件位于
/etc/nginx/sites - available/
目录下,找到你网站对应的配置文件并编辑。
- 添加 SSL 配置:在配置文件中添加以下内容:
server {
listen 443 ssl;
server_name yourdomain.com;
ssl_certificate /path/to/your/cert.pem;
ssl_certificate_key /path/to/your/privkey.pem;
location / {
root /var/www/html;
index index.html index.htm;
}
}
server {
listen 80;
server_name yourdomain.com;
return 301 https://$server_name$request_uri;
}
其中/path/to/your/cert.pem
和/path/to/your/privkey.pem
分别是你的 SSL 证书文件和私钥文件的路径。
- 重启 Nginx:完成配置后,使用以下命令重启 Nginx 服务:
sudo systemctl restart nginx
- 启用 SSL 模块:运行以下命令启用 Apache 的 SSL 模块:
- 编辑 Apache 配置文件:通常 Apache 的配置文件位于
/etc/apache2/sites - available/
目录下,创建或编辑一个新的配置文件,例如yourdomain.com.conf
。
- 添加 SSL 配置:在配置文件中添加以下内容:
<VirtualHost *:443>
ServerName yourdomain.com
DocumentRoot /var/www/html
SSLEngine on
SSLCertificateFile /path/to/your/cert.pem
SSLCertificateKeyFile /path/to/your/privkey.pem
# 其他配置项
</VirtualHost>
# 将HTTP请求重定向到HTTPS
<VirtualHost *:80>
ServerName yourdomain.com
Redirect permanent / https://yourdomain.com/
</VirtualHost>
同样,/path/to/your/cert.pem
和/path/to/your/privkey.pem
分别是你的 SSL 证书文件和私钥文件的路径。
- 重启 Apache:完成配置后,使用以下命令重启 Apache 服务:
sudo systemctl restart apache2
完成上述步骤后,当用户访问你的网站时,浏览器会通过 HTTPS 协议进行加密连接。
(责编: admin1)
免责声明:本文为转载,非本网原创内容,不代表本网观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。