lua-resty-auto-ssl 项目教程

随笔4个月前发布 我们很好
39 0 0

lua-resty-auto-ssl 项目教程

lua-resty-auto-ssl项目地址:https://gitcode.com/gh_mirrors/lua/lua-resty-auto-ssl

1. 项目的目录结构及介绍

lua-resty-auto-ssl 项目的目录结构如下:




lua-resty-auto-ssl/


├── conf


│   └── nginx.conf


├── lib


│   └── resty


│       └── auto-ssl


│           ├── init.lua


│           ├── ssl.lua


│           └── ...


├── README.md


└── ...

conf/:包含 Nginx 配置文件。lib/resty/auto-ssl/:包含项目的主要 Lua 脚本文件。README.md:项目的说明文档。

2. 项目的启动文件介绍

项目的启动文件主要是 lib/resty/auto-ssl/init.lua。这个文件负责初始化自动 SSL 功能,并设置必要的配置。




-- lib/resty/auto-ssl/init.lua


local auto_ssl = require "resty.auto-ssl"


auto_ssl:init()

3. 项目的配置文件介绍

项目的配置文件主要是 conf/nginx.conf。这个文件包含了 Nginx 的配置,以及如何使用 lua-resty-auto-ssl 模块。




# conf/nginx.conf


http {


    lua_shared_dict auto_ssl 1m;


    lua_shared_dict auto_ssl_settings 64k;


 


    init_by_lua_block {


        auto_ssl = (require "resty.auto-ssl") new()


        auto_ssl:set("allow_domain", function(domain) return true end)


        auto_ssl:set("dir", "/etc/resty-auto-ssl")


        auto_ssl:init()


    }


 


    init_worker_by_lua_block {


        auto_ssl:init_worker()


    }


 


    server {


        listen 443 ssl;


        ssl_certificate_by_lua_block {


            auto_ssl:ssl_certificate()


        }


        ssl_certificate /etc/ssl/resty-auto-ssl-fallback.crt;


        ssl_certificate_key /etc/ssl/resty-auto-ssl-fallback.key;


        root /var/www/myapp.com/public;


        index index.php index.html index.htm;


        location / {


            try_files $uri $uri/ /index.php$query_string;


        }


    }


}

这个配置文件设置了自动 SSL 功能,并指定了 SSL 证书的路径和处理逻辑。

lua-resty-auto-ssl项目地址:https://gitcode.com/gh_mirrors/lua/lua-resty-auto-ssl

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...