Apache RewriteCond не соответствует полю заголовка при попытке соответствия для обновления: websocket - PullRequest
0 голосов
/ 15 января 2019

При попытке сопоставить заголовок Upgrade: websocket из запроса сопоставление с образцом не работает, и RewriteCond не разрешает заголовок {%HTTP:Upgrade}.

RewriteEngine On
RewriteCond %{HTTP:Upgrade} =websocket [NC]
RewriteRule ^/(.*)    ws://host/ws/$1 [P,L]
RewriteRule ^/(.*)    http://host/ws/$1 [P,L]

Соответствующий повышенный результат отладки DumpIO:

dumpio_in (data-TRANSIENT): GET /ws HTTP/1.1\r\n
...
dumpio_in [getline-blocking] 0 readbytes
dumpio_in (data-TRANSIENT): 20 bytes
dumpio_in (data-TRANSIENT): Upgrade: websocket\r\n
...
RewriteCond: input='{%HTTP:Upgrade}' pattern='=websocket' [NC] => not-matched

На другом сервере эта точная конфигурация работает и вывод:

RewriteCond: input='websocket' pattern='=websocket' [NC] => matched

Что может быть причиной этого?

...