push_stream_websocket_allow_publish

Эта директива указывает, разрешать ли публикацию в канале WebSocket.

Синтаксисpush_stream_websocket_allow_publish on | off;
По умолчаниюoff
Контекстhttp, server, location
Аргументы1

Описание

Директива push_stream_websocket_allow_publish является частью модуля NGINX Push Stream и служит параметром конфигурации для управления правами публикации для WebSocket‑соединений. При включении этой директивы издатели могут отправлять сообщения в конкретные каналы; эта функция критически важна для приложений реального времени, где требуется немедленная рассылка сообщений. Когда директива применяется в контекстах, таких как http, server или location, она определяет поведение запросов к указанным конечным точкам, позволяя издателям эффективно публиковать сообщения.

Директива принимает один аргумент — 'on' или 'off'. При установке директивы в 'on' WebSocket‑клиенты, подключенные к соответствующему location, могут публиковать сообщения, тогда как значение 'off' ограничивает право публикации. Необходимо учитывать последствия для безопасности, связанные с разрешением публикации, поскольку это открывает каналы, через которые клиенты могут отправлять данные всем подписчикам.

Поскольку это бинарная директива, по умолчанию она установлена в 'off', что гарантирует отключение публикации, если это явно не разрешено в конфигурации. Такое поведение по умолчанию помогает предотвратить несанкционированную публикацию данных и защищает канал обмена сообщениями, используемый различными приложениями.

Пример конфига

server {
    location /pub {
        push_stream_websocket_allow_publish on;
        push_stream_publisher admin;
        push_stream_channels_path $arg_id;
    }
}

Убедитесь, что директива указана в правильном контексте (http, server или location), поскольку она не будет работать при неправильном размещении.

Будьте осторожны с последствиями для безопасности при предоставлении прав на публикацию, чтобы избежать несанкционированной отправки данных.

← Ко всем директивам