NGINX Unit

Catalyst§

使用 Unit 运行基于 Catalyst 5.9+ 框架的应用

  1. 使用 Perl 语言模块安装 Unit

  2. 安装 Catalyst 的 核心文件

  3. 创建 Catalyst 应用。在此,我们将其存储在 /path/to/app/

    $ cd /path/to/
    $ catalyst.pl app
    $ cd app
    $ perl Makefile.PL
    

    确保应用的 .psgi 文件包含 lib/ 目录

    use lib 'lib';
    use app;
    
  4. 运行以下命令,以便 Unit 可以访问 应用程序目录

    # chown -R unit:unit /path/to/app/
    

    注意

    unit:unit 用户组对仅适用于 官方软件包、Docker 映像 以及某些 第三方仓库。否则,帐户名称可能有所不同;运行 ps aux | grep unitd 命令以确保无误。

    有关包括权限在内的更多详细信息,请参阅 安全清单

  5. 接下来,准备 Unit 的 Catalyst 配置(对 scriptworking_directory 使用实际值)

    {
        "listeners": {
            "*:80": {
                "pass": "applications/catalyst"
            }
        },
    
        "applications": {
            "catalyst": {
                "type": "perl",
                "working_directory": "/path/to/app/",
                "script": "/path/to/app/app.psgi"
            }
        }
    }
    
  6. 上传更新的配置。假设上述 JSON 已添加到 config.json

    # curl -X PUT --data-binary @config.json --unix-socket \
           /path/to/control.unit.sock http://localhost/config/
    

    注意

    控制套接字 路径可能有所不同;运行 unitd -h 或参阅 启动和关闭 了解更多详细信息。

    成功更新后,您的应用应可在侦听器的 IP 地址和端口上使用

    Catalyst Basic Template App on Unit