HTTP3 php-fpm fastcgi_pass 500 problems

Ryan Gould ryanbgould at gmail.com
Sun Oct 11 19:58:56 UTC 2020


 > Hello.
 > It would be helpful if you'll be able to provide more details,
 > such as "nginx -V" output, revision of the nginx-quic branch,
 > debug log messages for a particular request causing 500 error,
 > and relevant configuration details.  How to obtain debug log:
 > http://nginx.org/en/docs/debugging_log.htm

this is the nginx branch i am using:
https://hg.nginx.org/nginx-quic

this is the boringssl i am using:
https://github.com/google/boringssl/archive/master.zip

here is a debug log:
https://quic.spoi.dev/quic.error-01.log.gz

server config:
i have pagespeed included in the build, but disabled for these tests. 
using unix fastcgi_pass php configuration.

here is the "nginx -V" output:

nginx version: nginx/1.19.3
built by gcc 6.3.0 20170516 (Debian 6.3.0-18+deb9u1)
built with OpenSSL 1.1.1 (compatible; BoringSSL) (running with BoringSSL)
TLS SNI support enabled
configure arguments: --with-debug --with-cc-opt=-I../boringssl/include 
--with-ld-opt='-L../boringssl/build/ssl -L../boringssl/build/crypto' 
--with-http_v3_module --with-http_quic_module --with-stream_quic_module 
--prefix=/etc/nginx --sbin-path=/usr/sbin/nginx 
--conf-path=/etc/nginx/nginx.conf --pid-path=/var/run/nginx.pid 
--lock-path=/var/lock/nginx.lock 
--error-log-path=/var/log/nginx/error.log 
--http-log-path=/var/log/nginx/access.log --user=www-data 
--group=www-data --without-http_uwsgi_module --without-http_scgi_module 
--without-http_memcached_module --without-mail_pop3_module 
--without-mail_imap_module --without-mail_smtp_module 
--with-http_ssl_module --with-http_v2_module 
--with-http_stub_status_module --with-http_gzip_static_module 
--with-http_realip_module --with-file-aio 
--add-module=../headers-more-nginx-module-master 
--add-module=../pagespeed 
--http-client-body-temp-path=/var/cache/nginx/client_temp 
--http-proxy-temp-path=/var/cache/nginx/proxy_temp 
--http-fastcgi-temp-path=/var/cache/nginx/fastcgi_temp 
--http-uwsgi-temp-path=/var/cache/nginx/uwsgi_temp 
--http-scgi-temp-path=/var/cache/nginx/scgi_temp --with-openssl=../boringssl



On 10/10/2020 3:09 PM, Ryan Gould wrote:
> hello awesome nginx developers,
> 
> i am having some odd behavior issues when in http3 / quic mode.
> 
> i am using a completely-up-to-date nginx-quic build on a debian 9 box.
> 
> my nginx php-fpm configuration has been solid and unchanging for years 
> and years.
> 
> if i disable http3 / quic, things work great in http2 mode.  if i enable 
> http3 / quic mode, something is causing all php7.3-fpm pages to generate 
> "500 Internal Server Error" pages.  static html pages render perfectly.
> 
> despite adding all the extra log arguments to nginx and to php7.3-fpm 
> (display_errors and the rest) i am only seeing the following in the 
> nginx error log:
> 
> 2020/10/10 21:19:47 [alert] 10614#0: *37 epoll_ctl(1, -1) failed (9: Bad 
> file descriptor), client: X.X.X, server: example.com, request: "GET 
> /php_test_page HTTP/3"
> 
> there is nothing to be seen in any other browser or server log.  the 
> server does send the default / implied favicon.ico perfectly.  the php 
> test page is only a phpinfo() command.
> 
> i have always used the fastcgi_pass socket setup, but i have also tried 
> the port version (same problem).
> 
> the same exact thing happens when i try it with a completely-up-to-date 
> nginx-quiche build on a different server.
> 
> i have not had much luck tracking down info on "epoll_ctl".
> 
> any thoughts or suggestions?
> 
> if i can help with logs, please let me know.


More information about the nginx mailing list