> использование пробела в четвёртом параметре ${readsocket иногда
> приводит к странным результатам.
> 
> простой пример:
> 
> # exim -be '${readsocket{inet:ukr.net:80}{GET / HTTP/1.0\r\nHost:
> ukr.net\r\n\r\n}{4s:shutdown=no}{\n}{socket failure}}'
> HTTP/1.1 301 Moved Permanently
> Server: nginx
> Date: Fri, 18 Jun 2021 11:16:35 GMT
> Content-Type: text/html
> Content-Length: 162
> Connection: close
> Location: http://www.ukr.net/
> 
> <html>
> <head><title>301 Moved Permanently</title></head>
> <body>
> <center><h1>301 Moved Permanently</h1></center>
> <hr><center>nginx</center>
> </body>
> </html>
> 
> 
> всё отлично.
> 
> теперь пробел:
> 
> # exim -be '${readsocket{inet:ukr.net:80}{GET / HTTP/1.0\r\nHost:
> ukr.net\r\n\r\n}{4s:shutdown=no}{ }{socket failure}}'
>  </html>nter>nginx</center>anently</h1></center>d>
> 
> 
> косяк этот воспроизводится стабильно на штатных результатах http
> запросов с 301-ми редиректами nginx.
> на большей части остальных ответов я не видел подобной каши в ответе.

Это только на экране кажется, что каша. Из-за CR в концах строк
(вместо LF или CRLF). Попробуйте в конец команды exim -be...
после закрывающего апострофа добавить:

|hd

Но у меня оба этих варианта выдают только один символ 0а (LF).
Если убрать shutdown=no, то выдает страничку.
Некоторые web-серверы требуют shutdown,
некоторые требуют чтобы shutdown не было,
остальные работают и так и так.


_______________________________________________
Exim-users mailing list
[email protected]
http://mailground.net/mailman/listinfo/exim-users

Ответить