网络传输安全已成为发展必然,我们需紧跟步伐,今天就来学习如何配置安全协议,Let’s ’s 是一个致力于公益事业的认证中心,它提供无成本、公开透明且自动化的电子凭证服务,具体信息请参考相关资料
这里我们依然使用来安装
mkdir -p /docker/certbot/conf
执行证书申请命令,使用webroot模式获取证书
此处连接了两个目录,一个用于存放凭证文件,路径为 ///conf,另一个作为网页内容的主目录,路径为 //www/html,请务必更新邮箱地址和网址信息。
阅读过先前文章的读者或许已经留意到,此前始终采用 -.yml 文件来执行,但此次为何改用 run 命令了?这背后存在一些较为繁杂的缘由。首先,该指令只需执行一次即可,其次就是本人目前尚不清楚如何编写……
安装结束后,大概会弹出一个供你选择的界面,在当中输入大写字母A代表同意。
这样,证书就应该安装完成了。
修改Nginx的-.yml
cd /docker/nginx
vi docker-compose.yml
version: "3.5"
networks:
zf_site_network:
name: zf_site_network
services:
nginx:
container_name: nginx
image: nginx
privileged: true
ports:
- "80:80"
- "443:443"
restart: always
volumes:
将容器内的网页目录挂载到宿主机的指定路径上
将容器内的nginx配置文件目录映射到宿主机的对应文件夹中
将证书存储目录映射到容器的指定位置,具体路径为从宿主机的 /docker/certbot/conf 路径,到容器内的 /etc/letsencrypt 路径,实现文件系统的关联
将容器的日志目录与宿主机的日志目录进行关联,映射路径为从容器内的nginx日志文件夹到宿主机上的对应日志存储位置
networks:
- zf_site_network
environment:
- TZ=Asia/Shanghai
重新启动nginx
docker-compose up -d
配置Nginx
在第二章我们创建了 你的域名_80.conf这个配置文件:
server {
listen 80;
server_name 你的域名;
root 网站根目录;
location / {
index index.php index.html;
}
if (!-e $request_filename) {
将所有路径匹配^/(.*)的部分重定向到/index.php/$1,并设置为此规则链的末尾指令
}
location ~ \.php(.*)$ {
fastcgi_pass php:9000;
fastcgi_index index.php;
将路径信息分割,当模式匹配到以.php结尾的字符串,且后面可能跟有其他字符时,将这部分作为路径信息,剩余部分作为额外路径,使用正则表达式实现,不区分大小写
设置参数SCRIPT_FILENAME为$document_root与$fastcgi_script_name的组合值
将路径信息参数设置为FastCGI路径信息变量值,使用等号进行赋值操作,确保参数与变量值一致,以实现正确传递,维护系统运行稳定,提升服务响应效率。
设置环境变量PATH_TRANSLATED为文档根目录与fastcgi路径信息的组合值
将相关配置文件载入,并设定快速CGI参数
}
}
现在修改一下:
server {
listen 80;
server_name 你的域名;
将地址重定向至 https://目标域名永久生效
}
server {
listen 443 ssl;
server_name 你的域名;
root 网站根目录;
location / {
index index.php index.html;
}
if (!-e $request_filename) {
rewrite ^/(.*) /index.php/$1 last;
}
location ~ \.php(.*)$ {
fastcgi_pass php:9000;
fastcgi_index index.php;
fastcgi_split_path_info ^((?U).+\.php)(/?.+)$;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
include fastcgi_params;
}
ssl on;
证书文件位置位于等等加密目录下你的域名完整链文件,具体路径为等等加密目录下你的域名完整链文件路径。
证书私钥文件路径为等号后面这个位置,也就是位于目录等等加密的实时活动域名下的私钥文件,文件扩展名是 pem。
ssl_session_timeout 5m;
安全协议包括 TLS 版本一, TLS 版本一点一, TLS 版本一点二。
加密套件包含ECDHE-RSA-AES128-GCM-SHA256,优先选用该方案,排除不需要的套件,具体包括不使用匿名连接,不采用MD5哈希,禁用RC4算法,也不使用DHE密钥交换方式。
ssl_prefer_server_ciphers on;
charset utf-8;
日志文件位置设定为 /var/log/nginx/你的域名.access.log, 主要用于记录访问信息, 格式规范统一
错误日志存放于 /var/log/nginx/你的域名.error.log 警告级别记录
}
重启Nginx
docker restart nginx(镜像名称)
访问浏览器
现在访问一下自己的域名,看看是否变成https了?
扫一扫在手机端查看
- 上一篇:招聘网站CMS系统对比分析_三大招聘CMS系统源码深度对比:骑士CMS、PHPYun与节点招聘
- 下一篇:php mariadb mariadb数据库迁移到内网服务器_Mariadb数据库搬家(文件转移),局域网内与程序服务器分开运行
本文链接:https://by928.com/11835.html 转载请注明出处和本文链接!请遵守
《网站协议》
!
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。


客服1