Странная проблема с ограничением размера в заголовке http

Когда вы вызываете os.fork, вы создаете новый процесс, который является точной копией существующего процесса , кроме , который в исходном процессе fork возвращает идентификатор процесса нового (дочернего ), а в новом процессе fork возвращает 0. Это различие заключается в том, как вы можете сделать что-то другое в родительском и дочернем.

В вашем конкретном коде возвращаемое значение fork в дочернем элементе 0, поэтому дочерний процесс вызывает child. В родительском объекте возвращаемое значение не является 0, поэтому выполняется условие else.

-1
задан maxime 16 January 2019 в 16:09
поделиться

2 ответа

Hanshenrik,
я также использовал CURLOPT_VERBOSE, как вы сказали. Вот 2 журнала локонов. Единственное отличие заключается в том, что строка < * остановила поток пауз!> В журнале скручивания Ubuntu.


В журнале CURL от ведьмы Ubuntu есть проблема:

*   Trying 192.168.1.205...
* TCP_NODELAY set
* Connected to 192.168.1.205 (192.168.1.205) port 8084 (#0)
> POST /datasnap/rest/TServerMethods/%22W_GetDashboard%22/ HTTP/1.1
Host: 192.168.1.205:8084
Accept-Encoding: gzip,deflate
Accept: application/json
Content-Type: text/xml; charset=utf-8
Pragma: dssession=146326.909376.656191
Content-Length: 15
* upload completely sent off: 15 out of 15 bytes

< HTTP/1.1 200 OK
< Connection: close
< Content-Encoding: deflate
< Content-Type: application/json
< Content-Length: 348
< Date: Thu, 17 Jan 2019 15:27:03 GMT
< Pragma: dssession=146326.909376.656191,dssessionexpires=3600000
< 
* stopped the pause stream!
* Closing connection 0

В журнале CURL от ведьмы Centos нет проблемы:

* About to connect() to 192.168.1.205 port 8084 (#1)
*   Trying 192.168.1.205...
* Connected to 192.168.1.205 (192.168.1.205) port 8084 (#1)
> POST /datasnap/rest/TServerMethods/%22W_GetDashboard%22/ HTTP/1.1
Host: 192.168.1.205:8084
Accept-Encoding: gzip,deflate
Accept: application/json
Content-Type: text/xml; charset=utf-8
Pragma: dssession=3812.553164.889594
Content-Length: 15

* upload completely sent off: 15 out of 15 bytes
< HTTP/1.1 200 OK
< Connection: close
< Content-Encoding: deflate
< Content-Type: application/json
< Content-Length: 348
< Date: Thu, 17 Jan 2019 15:43:39 GMT
< Pragma: dssession=3812.553164.889594,dssessionexpires=3600000
< 
* Closing connection 1
0
ответ дан maxime 16 January 2019 в 16:09
поделиться

не ответ, но хочу сказать, что, используя PHP 7.2.5 в mod_php с Apache 2.4.33, я не могу воспроизвести вашу проблему, поскольку у меня нет проблем с отправкой чего-либо от 1 байта до 10000 или даже до 100000 байтов в Заголовки:

enter image description here

вот мой продюсер: php:

<?php
$size=((int)(

не ответ, но хочу сказать, что, используя PHP 7.2.5 в mod_php с Apache 2.4.33, я не могу воспроизвести вашу проблему, поскольку у меня нет проблем с отправкой чего-либо от 1 байта до 10000 или даже до 100000 байтов в Заголовки:

enter image description here

вот мой продюсер: php:

[110]

и ударил ли я http : //127.0.0.1/producer.php? S = 1 или http://127.0.0.1/producer.php?s=10000 или даже http: //127.0. 0.1 / provider.php? S = 100000 , данные возвращаются без проблем, как вы можете видеть на скриншоте выше. Можете ли вы воспроизвести проблему, используя мой код продюсера:

Кстати, интересно, когда я пробую 1 миллион байт, я получаю эту ошибку из curl:

$ curl -I http://127.0.0.1/producer.php?s=1000000
HTTP/1.1 204 No Content
Date: Wed, 16 Jan 2019 20:11:25 GMT
Server: Apache/2.4.33 (Win32) OpenSSL/1.1.0h PHP/7.2.5
X-Powered-By: PHP/7.2.5
X-size: 1000000
curl: (27) Rejected 104960 bytes header (max is 102400)!
GET['s'] ?? 1)); header("X-size: {$size}"); $data=str_repeat("a",$size); header("X-data: {$data}"); http_response_code(204); // 204 NO CONTENT

и ударил ли я http : //127.0.0.1/producer.php? S = 1 или http://127.0.0.1/producer.php?s=10000 или даже http: //127.0. 0.1 / provider.php? S = 100000 , данные возвращаются без проблем, как вы можете видеть на скриншоте выше. Можете ли вы воспроизвести проблему, используя мой код продюсера:

Кстати, интересно, когда я пробую 1 миллион байт, я получаю эту ошибку из curl:

$ curl -I http://127.0.0.1/producer.php?s=1000000
HTTP/1.1 204 No Content
Date: Wed, 16 Jan 2019 20:11:25 GMT
Server: Apache/2.4.33 (Win32) OpenSSL/1.1.0h PHP/7.2.5
X-Powered-By: PHP/7.2.5
X-size: 1000000
curl: (27) Rejected 104960 bytes header (max is 102400)!
0
ответ дан hanshenrik 16 January 2019 в 16:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: