我们已经准备好了,你呢?

2026我们与您携手共赢,为您的企业形象保驾护航!

网络传输安全已成为发展必然,我们需紧跟步伐,今天就来学习如何配置安全协议,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了?

二维码
扫一扫在手机端查看

本文链接:https://by928.com/11835.html     转载请注明出处和本文链接!请遵守 《网站协议》
我们凭借多年的网站建设经验,坚持以“帮助中小企业实现网络营销化”为宗旨,累计为4000多家客户提供品质建站服务,得到了客户的一致好评。如果您有网站建设、网站改版、域名注册、主机空间、手机网站建设、网站备案等方面的需求,请立即点击咨询我们或拨打咨询热线: 13761152229,我们会详细为你一一解答你心中的疑难。

项目经理在线

我们已经准备好了,你呢?

2020我们与您携手共赢,为您的企业形象保驾护航!

在线客服
联系方式

热线电话

13761152229

上班时间

周一到周五

公司电话

二维码
微信
线