Open noqqe opened 8 years ago
Okay, I found some more interesting stuff. If you closely look at the following two requests, it looks that the result that is coming from Relayd is not really a HTTP Answer. More looks more like its actually just the payload in plaintext including the headers.
What it should look like (query without relayd)
curl -v localhost:5003/kadsen/status ; echo
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 5003 (#0)
> GET /kadsen/status HTTP/1.1
> Host: localhost:5003
> User-Agent: curl/7.47.0
> Accept: */*
>
* HTTP 1.0, assume close after body
< HTTP/1.0 200 OK
< Content-Type: text/plain; charset=utf-8
< Content-Length: 268
< Server: Werkzeug/0.11.10 Python/2.7.11
< Date: Fri, 19 Aug 2016 07:29:35 GMT
<
images cached: 56 (816 bytes) - already crawled: 75 (776 bytes)
Reddit - aww with factor 1.0: 22 Images |###*
Reddit - cats with factor 1.0: 18 Images |###
Reddit - aww_gifs with factor 1.0: 16 Images |###
* Closing connection 0
What relayd prints out:
$ curl -v localhost/kadsen/status ; echo
* Trying 127.0.0.1...
* Connected to localhost (127.0.0.1) port 80 (#0)
> GET /kadsen/status HTTP/1.1
> Host: localhost
> User-Agent: curl/7.47.0
> Accept: */*
>
Server: Werkzeug/0.11.10 Python/2.7.11
Date: Fri, 19 Aug 2016 07:29:11 GMT
images cached: 56 (816 bytes) - already crawled: 75 (776 bytes)
Reddit - aww with factor 1.0: 22 Images |###*
Reddit - cats with factor 1.0: 18
Note the missing HTTP 200 Return Code, note the missing <
when the result is being recieved.
I might have the same problem with monit, see here: https://marc.info/?l=openbsd-misc&m=152388670603181&w=2
Did you find any solution for this? I don't get this when relaying to httpd.
@hrkfdn Did not find out anything. Just dropped the relayd solution and replaced it with nginx.
Hi,
I just setup a small reverse proxy-like configuration for some of my python (werkzeug) instances.
The problem is that relayd seems to cut HTML content away after X Bytes. Not sure where this comes from. In the browser I see uninterpreted HTML that ends with this:
Where it should print:
The curling the instance directly (on the backend port, not using relayd) shows:
And the same curl on relayd (notice the bytes transferred)
Anyways, I dont get delivered a working website using relayd and the http protocol. Not sure what to do now. I took a look at the tcp socket buffer configuration but that does not seem the right place, or?