httptunnel через nginx
Марсель Ялалов
marbledore на mail.ru
Чт Апр 15 13:04:08 MSD 2010
Добрый день!
Пытаюсь наладить ssh-подключение через httptunnel, который стоит за nginx.
Если коннектиться без nginx сразу на порт httptunnel, то всё работает отлично, клиент передаёт запрос POST, а первый ответный пакет сервера примерно такой:
HOST: ****.dyndns.org:8888
Content-Length: 102400
Connection: close
Если же включить nginx и подключаться к нему, то tcpdump говорит, что запрос идёт GET, а ответ такой:
HTTP/1.1 200 OK
Content-Length: 102400
(ну и вообще данные другие)
Клиент не продолжает передачу данных и висит.
Часть конфига nginx:
server {
listen 80;
server_name ****.dyndns.org;
location / {
proxy_pass http://127.0.0.1:8888;
}
}
Не сработала. Потом я попытался убрать keep_alive и разный буфферинг, так как думал, что причина в отсутствии Connectino close:
server {
listen 80;
server_name ****.dyndns.org;
keepalive_requests 0;
keepalive_timeout 0;
server_tokens off;
location / {
proxy_pass http://127.0.0.1:8888;
proxy_intercept_errors on;
proxy_cache off;
proxy_buffering off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_redirect off;
add_header Connection close ;
}
}
Тоже не помогает.
Как изменить GET на POST, я пока не придумал.
Прошу подсказок!
Подробная информация о списке рассылки nginx-ru