You are viewing a plain text version of this content. The canonical link for it is here.
Posted to bugs@httpd.apache.org by bu...@apache.org on 2022/12/02 09:46:35 UTC

[Bug 66373] New: Multi chunk post data does not arrive

https://bz.apache.org/bugzilla/show_bug.cgi?id=66373

            Bug ID: 66373
           Summary: Multi chunk post data does not arrive
           Product: Apache httpd-2
           Version: 2.4.54
          Hardware: PC
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P2
         Component: mod_proxy_fcgi
          Assignee: bugs@httpd.apache.org
          Reporter: torgato@posteo.de
  Target Milestone: ---

If I make a POST request to apache configured with event/fpm which is chunked
and has more than 1 chunk, then the data does not arrive at the php script.

If I use prefork instead of event/fpm all works fine

If I make a non chunked request, or a chunked request with only one chunk, all
is fine as well.

To reproduce use CURL with post data larger than 64kb


Works fine (non chunked request):
curl -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" -X POST
-d @postdata.dat "http://test.website.de/test.php"

Failes (chunked request):
curl  -H "Transfer-Encoding: chunked" -H "Content-Type:
application/x-www-form-urlencoded;charset=UTF-8" -X POST -d @postdata.dat
"http://test.website.de/test.php"

Works fine (chunked but < 64kb):
curl  -H "Transfer-Encoding: chunked" -H "Content-Type:
application/x-www-form-urlencoded;charset=UTF-8" -X POST -d @postdata_small.dat
"http://test.website.de/test.php"

Note that php://input as well as $_POST is empty when it fails.

I noticed this as some of our clients chunk POST requests already after 1024Kb


I am using 2.4.54 

httpd -V
[Fri Dec 02 09:39:38.916798 2022] [so:warn] [pid 11980:tid 140066409769152]
AH01574: module systemd_module is already loaded, skipping
Server version: Apache/2.4.54 (codeit)
Server built:   Jun  8 2022 09:34:58
Server's Module Magic Number: 20120211:124
Server loaded:  APR 1.7.0, APR-UTIL 1.6.1, PCRE 10.23 2017-02-14
Compiled using: APR 1.7.0, APR-UTIL 1.6.1, PCRE 10.23 2017-02-14
Architecture:   64-bit
Server MPM:     event
  threaded:     yes (fixed thread count)
    forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -D APR_USE_PROC_PTHREAD_SERIALIZE
 -D APR_USE_PTHREAD_SERIALIZE
 -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT
 -D APR_HAS_OTHER_CHILD
 -D AP_HAVE_RELIABLE_PIPED_LOGS
 -D DYNAMIC_MODULE_LIMIT=256
 -D HTTPD_ROOT="/etc/httpd"
 -D SUEXEC_BIN="/usr/sbin/suexec"
 -D DEFAULT_PIDLOG="run/httpd.pid"
 -D DEFAULT_SCOREBOARD="logs/apache_runtime_status"
 -D DEFAULT_ERRORLOG="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="conf/mime.types"
 -D SERVER_CONFIG_FILE="conf/httpd.conf"


apachectl -M
Loaded Modules:
 core_module (static)
 so_module (static)
 http_module (static)
 access_compat_module (shared)
 actions_module (shared)
 alias_module (shared)
 allowmethods_module (shared)
 auth_basic_module (shared)
 auth_digest_module (shared)
 authn_anon_module (shared)
 authn_core_module (shared)
 authn_dbd_module (shared)
 authn_dbm_module (shared)
 authn_file_module (shared)
 authn_socache_module (shared)
 authz_core_module (shared)
 authz_dbd_module (shared)
 authz_dbm_module (shared)
 authz_groupfile_module (shared)
 authz_host_module (shared)
 authz_owner_module (shared)
 authz_user_module (shared)
 autoindex_module (shared)
 brotli_module (shared)
 cache_module (shared)
 cache_disk_module (shared)
 cache_socache_module (shared)
 data_module (shared)
 dbd_module (shared)
 deflate_module (shared)
 dir_module (shared)
 dumpio_module (shared)
 echo_module (shared)
 env_module (shared)
 expires_module (shared)
 ext_filter_module (shared)
 filter_module (shared)
 headers_module (shared)
 include_module (shared)
 info_module (shared)
 log_config_module (shared)
 logio_module (shared)
 macro_module (shared)
 mime_magic_module (shared)
 mime_module (shared)
 negotiation_module (shared)
 remoteip_module (shared)
 reqtimeout_module (shared)
 request_module (shared)
 rewrite_module (shared)
 setenvif_module (shared)
 slotmem_plain_module (shared)
 slotmem_shm_module (shared)
 socache_dbm_module (shared)
 socache_memcache_module (shared)
 socache_redis_module (shared)
 socache_shmcb_module (shared)
 status_module (shared)
 substitute_module (shared)
 suexec_module (shared)
 unique_id_module (shared)
 unixd_module (shared)
 userdir_module (shared)
 version_module (shared)
 vhost_alias_module (shared)
 watchdog_module (shared)
 dav_module (shared)
 dav_fs_module (shared)
 dav_lock_module (shared)
 lua_module (shared)
 mpm_event_module (shared)
 proxy_module (shared)
 lbmethod_bybusyness_module (shared)
 lbmethod_byrequests_module (shared)
 lbmethod_bytraffic_module (shared)
 lbmethod_heartbeat_module (shared)
 proxy_ajp_module (shared)
 proxy_balancer_module (shared)
 proxy_connect_module (shared)
 proxy_express_module (shared)
 proxy_fcgi_module (shared)
 proxy_fdpass_module (shared)
 proxy_ftp_module (shared)
 proxy_http_module (shared)
 proxy_hcheck_module (shared)
 proxy_scgi_module (shared)
 proxy_uwsgi_module (shared)
 proxy_wstunnel_module (shared)
 ssl_module (shared)
 systemd_module (shared)
 cgid_module (shared)
 perl_module (shared)
 fcgid_module (shared)
 php7_module (shared)
 apreq_module (shared)



php.conf:

<IfModule  mod_php7.c>

    # Tell the PHP interpreter to handle files with a .php extension.

    # Proxy declaration
    <Proxy "fcgi://localhost/">

    # we must declare a parameter in here (doesn't matter which) or it'll not
register the proxy ahead of time
        ProxySet disablereuse=off       
    </Proxy>

    # Redirect to the proxy
    <FilesMatch \.php$>
        SetHandler "proxy:fcgi://localhost:9000"
    </FilesMatch>

</IfModule>

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


[Bug 66373] Multi chunk post data does not arrive

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=66373

Torge Kummerow <to...@posteo.de> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Severity|normal                      |major
           Priority|P2                          |P1

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org


[Bug 66373] Multi chunk post data does not arrive

Posted by bu...@apache.org.
https://bz.apache.org/bugzilla/show_bug.cgi?id=66373

--- Comment #1 from Torge Kummerow <to...@posteo.de> ---
When looking for others having this problem it seems to always end up with them
using NGINX. And indeed, when using NGINX it works fine. So FPM seems to not be
the issue here, but really apache.

-- 
You are receiving this mail because:
You are the assignee for the bug.
---------------------------------------------------------------------
To unsubscribe, e-mail: bugs-unsubscribe@httpd.apache.org
For additional commands, e-mail: bugs-help@httpd.apache.org