Author |
|
mbnsorg
Joined: 29 Jul 2024 Posts: 7
|
Posted: Mon 29 Jul '24 21:05 Post subject: Apache 2.4.62 and UNCList config |
|
|
I manage a prod site (Windows Server 2016) that has been using Apache 2.4 for over 8 years without any issues. With the Apache 2.4.60 release, we had to adjust httpd.conf to use UNCList. The Apache 2.4.61 release was applied shortly thereafter without any problems.
Over this past weekend, Apache 2.4.62 was applied (no config changes) and while the service started without any errors, site pages fail to load (500) due to LimitInternalRecursion.
Quote: | AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace.
|
Apache 2.4.62 was applied to a few other non-UNCList sites without any issues (otherwise same httpd config), and since I haven't seen this specific issue rear on any of my sites before, I'm wondering if the new-ish UNCList config feature may be causing a problem? Reverting back to 2.4.61 resolved the issue for now.
Our default LogLevel is warn and I haven't had a chance to adjust the LogLevel to debug yet, but wanted to see if 2.4.62 with UNCList might be a problem for anyone else, if I should wait to try with 2.4.63, or if I need to plan for some late-night debugging.
Thanks -
mb |
|
Back to top |
|
mbnsorg
Joined: 29 Jul 2024 Posts: 7
|
Posted: Tue 30 Jul '24 3:16 Post subject: |
|
|
Re-ran this issue with 'LogLevel debug' and the results are below.
httpd.conf:
UNCList ip-100-100-100-100.ec2.internal
ServerRoot "C:/Apache24"
Define DOCROOT "//ip-100-100-100-100.ec2.internal/Vol"
<VirtualHost *:443>
ServerName xxx.yyy
DocumentRoot "${DOCROOT}/Apache24/htdocs"
</VirtualHost>
The shared drive ip-100-100-100-100.ec2.internal/Vol referenced in logs is configured via UNCList and DocumentRoot. And, xxx.yyy is a PHP/CMS(drupal) without any modifications to the distro .htaccess or index.php file.
Quote: | [Mon Jul 29 20:36:39.090013 2024] [core:error] [pid 900:tid 1260] [client 127.0.0.1:50379] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: https://xxx.yyy
[Mon Jul 29 20:36:39.090013 2024] [core:debug] [pid 900:tid 1260] core.c(3968): [client 127.0.0.1:50379] AH00121: r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/sites/default/files/js/js_kV4KTkZZyyCaxcP1LFkFBd1MmxOvHkFRHZ4TwDY2b7s.js.gz, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [core:debug] [pid 900:tid 1260] core.c(3974): [client 127.0.0.1:50379] AH00122: redirected from r->uri = /sites/default/files/js/js_kV4KTkZZyyCaxcP1LFkFBd1MmxOvHkFRHZ4TwDY2b7s.js, referer: https://xxx.yyy/
[Mon Jul 29 20:36:39.090509 2024] [headers:debug] [pid 900:tid 1260] mod_headers.c(890): AH01503: headers: ap_headers_error_filter()
[Mon Jul 29 20:36:39.090509 2024] [ssl:debug] [pid 900:tid 1260] ssl_engine_io.c(1150): [client 127.0.0.1:50379] AH02001: Connection closed to child 57 with standard shutdown (server xxx.yyy:443) |
I cannot tell from the 2.4.62 Changelog what could have resulted in these redirects.
Any ideas? |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
|
Back to top |
|
covener
Joined: 23 Nov 2008 Posts: 59
|
Posted: Tue 30 Jul '24 13:49 Post subject: |
|
|
how/where is PHP configured? |
|
Back to top |
|
mbnsorg
Joined: 29 Jul 2024 Posts: 7
|
Posted: Tue 30 Jul '24 16:22 Post subject: |
|
|
httpd.conf is left mostly as-is and a php.conf file is included at the bottom of the httpd.conf. If relevant to this issue, the <VirtualHost> section is in another conf file and is included after php.conf - it was just described above for brevity.
Include conf/php.conf
Quote: | <IfModule !fcgid_module>
LoadModule fcgid_module modules/mod_fcgid.so
</IfModule>
FcgidInitialEnv PHPRC "c:/php"
FcgidInitialEnv PATH "c:/php;C:/WINDOWS/system32;C:/WINDOWS;C:/WINDOWS/System32/Wbem;"
FcgidInitialEnv SystemRoot "C:/Windows"
FcgidInitialEnv SystemDrive "C:"
FcgidInitialEnv TEMP "C:/WINDOWS/Temp"
FcgidInitialEnv TMP "C:/WINDOWS/Temp"
FcgidInitialEnv windir "C:/WINDOWS"
FcgidIOTimeout 300
FcgidBusyTimeout 360
FcgidConnectTimeout 30
FcgidMaxRequestsPerProcess 500
FcgidMaxRequestLen <big-number>
<Files ~ "\.php$>"
AddHandler fcgid-script .php
FcgidWrapper "c:/php/php-cgi.exe" .php
</Files> |
Here is service startup confirmation.
Quote: | [Mon Jul 29 20:34:44.771316 2024] [mpm_winnt:notice] [pid 6280:tid 392] AH00455: Apache/2.4.62 (Win64) OpenSSL/3.1.6 mod_fcgid/2.3.10-dev configured -- resuming normal operations
[Mon Jul 29 20:34:44.771316 2024] [mpm_winnt:notice] [pid 6280:tid 392] AH00456: Apache Lounge VS17 Server built: Jul 16 2024 12:23:10
[Mon Jul 29 20:34:44.771316 2024] [core:notice] [pid 6280:tid 392] AH00094: Command line: 'C:\\Apache24\\bin\\httpd.exe -d C:/Apache24'
[Mon Jul 29 20:34:44.786943 2024] [mpm_winnt:notice] [pid 6280:tid 392] AH00418: Parent: Created child process 6588 |
|
|
Back to top |
|
covener
Joined: 23 Nov 2008 Posts: 59
|
Posted: Thu 01 Aug '24 3:21 Post subject: |
|
|
I don't think it's UNCList. Do your other services use mod_fcgid?
maybe `LogLevel trace8` gives a better hint. |
|
Back to top |
|
mbnsorg
Joined: 29 Jul 2024 Posts: 7
|
Posted: Fri 02 Aug '24 3:24 Post subject: |
|
|
The root of this might not be UNCList, however the exact same configuration is running totally fine in 2.4.62 without UNCList (in the "non-prod" env for this site).
Turning on 'LogLevel trace8' resulted in over 30K lines of logging just for one page load, so I'm not exactly sure where to look, but here is a little before what was shown prior, related to the 500 error page load.
Quote: | [Thu Aug 01 20:09:54.150461 2024] [rewrite:trace4] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] RewriteCond: input='//ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/ip-100-100-100-100.ec2.internal' pattern='!-f' => matched, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace4] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] RewriteCond: input='//ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/ip-100-100-100-100.ec2.internal' pattern='!-d' => matched, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace4] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] RewriteCond: input='/ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php' pattern='!=/favicon.ico' => matched, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace2] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] rewrite 'ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php' -> 'index.php', referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace3] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] add per-dir prefix: index.php -> //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace2] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] setting lastsub to rule with output index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace2] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] trying to replace prefix //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/ with /, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace2] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] trying to replace context docroot //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs with context prefix , referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [rewrite:trace1] [pid 1156:tid 1272] mod_rewrite.c(505): [client 127.0.0.1:63246] 127.0.0.1 - - [xxx.yyy/sid#20f8b6301d8][rid#20f8be9fa20/initial/redir#10] [perdir //ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/] internal redirect with /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php [INTERNAL REDIRECT], referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:error] [pid 1156:tid 1272] [client 127.0.0.1:63246] AH00124: Request exceeded the limit of 10 internal redirects due to probable configuration error. Use 'LimitInternalRecursion' to increase the limit if necessary. Use 'LogLevel debug' to get a backtrace., referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3968): [client 127.0.0.1:63246] AH00121: r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/index.php, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /ip-100-100-100-100.ec2.internal/Vol/Apache24/htdocs/sites/default/files/css/css_WBi1OMobD3sBmgPRy32SaGFNagGgRd-scHQQ3RDHzeI.css.gz, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [core:debug] [pid 1156:tid 1272] core.c(3974): [client 127.0.0.1:63246] AH00122: redirected from r->uri = /sites/default/files/css/css_WBi1OMobD3sBmgPRy32SaGFNagGgRd-scHQQ3RDHzeI.css, referer: https://xxx.yyy/
[Thu Aug 01 20:09:54.150959 2024] [headers:debug] [pid 1156:tid 1272] mod_headers.c(890): AH01503: headers: ap_headers_error_filter()
[Thu Aug 01 20:09:54.150959 2024] [http:trace3] [pid 1156:tid 1272] http_filters.c(1141): [client 127.0.0.1:63246] Response sent with status 500, headers:, referer: https://xxx.yyy/ |
The RewriteRule in .htaccess leading up to this looks like:
Quote: | # Pass all requests not referring directly to files in the filesystem to
# index.php.
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} !=/favicon.ico
RewriteRule ^ index.php [L] |
Does this point to something/anything I could try?
I'm not sure what is meant by the question "do your other services use mod_fcgid?"
Thanks for helping! |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
Posted: Mon 12 Aug '24 11:23 Post subject: |
|
|
New Post on the mailinglist |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
Posted: Tue 13 Aug '24 9:50 Post subject: |
|
|
On the list the dev asks if you can test a patched mod_rewrite :
Download removed |
|
Back to top |
|
mbnsorg
Joined: 29 Jul 2024 Posts: 7
|
Posted: Tue 13 Aug '24 17:07 Post subject: |
|
|
Great, yes, will test for sure. I am on vacation right now for a few more days, but will try to test it out before officially back in office. |
|
Back to top |
|
mbnsorg
Joined: 29 Jul 2024 Posts: 7
|
Posted: Wed 14 Aug '24 2:41 Post subject: |
|
|
Confirmed - using the provided test version of mod_rewrite allows the site to load and function as expected, without errors.
The UNC flag was not added to any of the site .htaccess files for the test. |
|
Back to top |
|
Steffen Moderator
Joined: 15 Oct 2005 Posts: 3092 Location: Hilversum, NL, EU
|
Posted: Wed 14 Aug '24 10:25 Post subject: |
|
|
Great. Eric committed as r1919860 to trunk and already proposed for backport. |
|
Back to top |
|
mytlogos
Joined: 27 Jul 2024 Posts: 1 Location: Germany, Hamburg
|
Posted: Thu 19 Sep '24 14:54 Post subject: |
|
|
Do you know if this is already fixed or where i can see the status without using an email list? |
|
Back to top |
|
admin Site Admin
Joined: 15 Oct 2005 Posts: 692
|
|
Back to top |
|