coolkit: Модуль NGINX CoolKit
Установка для Debian/Ubuntu
Эти документы применимы к APT пакету nginx-module-coolkit, предоставляемому репозиторием GetPageSpeed Extras.
- Настройте APT репозиторий, как описано в настройке APT репозитория.
- Установите модуль:
sudo apt-get update
sudo apt-get install nginx-module-coolkit
Показать версии и архитектуры
| Дистрибутив | Версия | Компонент | Архитектуры |
|-------------|--------------------|-------------|----------------|
| debian | bookworm | main | amd64, arm64 |
| debian | bookworm-mainline | main | amd64, arm64 |
| debian | trixie | main | amd64, arm64 |
| debian | trixie-mainline | main | amd64, arm64 |
| ubuntu | focal | main | amd64, arm64 |
| ubuntu | focal-mainline | main | amd64, arm64 |
| ubuntu | jammy | main | amd64, arm64 |
| ubuntu | jammy-mainline | main | amd64, arm64 |
| ubuntu | noble | main | amd64, arm64 |
| ubuntu | noble-mainline | main | amd64, arm64 |
О МОДУЛЕ:
ngx_coolkit — это коллекция небольших и полезных дополнений для nginx.
ДИРЕКТИВЫ КОНФИГУРАЦИИ:
override_method off | [methods] source (контекст: http, сервер, местоположение)
Переопределите HTTP метод.
по умолчанию: none
ПЕРЕМЕННЫЕ КОНФИГУРАЦИИ:
$remote_passwd
Декодированный пароль из заголовка "Authorization" (Базовая HTTP Аутентификация).
$location
Имя совпадающего блока местоположения.
ПРИМЕР КОНФИГУРАЦИИ #1:
http { server { location / { override_method $arg_method; proxy_pass http://127.0.0.1:8100; } } }
Передайте запрос с измененным HTTP методом (основанным на "?method=XXX") на сервер.
ПРИМЕР КОНФИГУРАЦИИ #2:
http { upstream database { postgres_server 127.0.0.1 dbname=test user=monty password=some_pass; }
server {
location = /auth {
internal;
set_quote_sql_str $user $remote_user;
set_quote_sql_str $pass $remote_passwd;
postgres_pass database;
postgres_query "SELECT login FROM users WHERE login=$user AND pass=$pass";
postgres_rewrite no_rows 403;
postgres_output none;
}
location / {
auth_request /auth;
root /files;
}
}
}
Ограничьте доступ к локальным файлам, аутентифицируясь против SQL базы данных.
Необходимые модули (кроме ngx_coolkit): - ngx_http_auth_request_module, - ngx_postgres (PostgreSQL) или ngx_drizzle (MySQL, Drizzle, SQLite), - ngx_set_misc.