Keep Server Online
If you find the Apache Lounge, the downloads and overall help useful, please express your satisfaction with a donation.
or
A donation makes a contribution towards the costs, the time and effort that's going in this site and building.
Thank You! Steffen
Your donations will help to keep this site alive and well, and continuing building binaries. Apache Lounge is not sponsored.
| |
|
Topic: Apache 2.4.66 VS18 httpd crashes PHP 8.5.1 |
Page Previous 1, 2, 3, 4 |
| Author |
|
axel.kam

Joined: 11 Jul 2023 Posts: 19
|
|
| Back to top |
|
admin Site Admin

Joined: 15 Oct 2005 Posts: 729
|
Posted: Mon 23 Feb '26 15:04 Post subject: |
|
|
I asked AI :
Status 3221226356 (0xC0000374) = heap corruption → mostly :
❗ PHP DLL mismatch
❗ Verkeerde VC++ runtime
❗ Foute / corrupte PHP extension
❗ TS vs NTS fout (they advise TS) |
|
| Back to top |
|
admin Site Admin

Joined: 15 Oct 2005 Posts: 729
|
Posted: Mon 23 Feb '26 19:28 Post subject: |
|
|
Extra info :
❗ Windows heap corruption
❗ Memory overwrite
❗ Double free
❗ Thread race condition
Dat wijst bijna altijd op:
• PHP extension bug
• mod_php + threads conflict
• OPCache memory issue
• DLL mismatch
• 3rd party module |
|
| Back to top |
|
axel.kam

Joined: 11 Jul 2023 Posts: 19
|
Posted: Tue 24 Feb '26 1:52 Post subject: |
|
|
Yes, I working at this list, but in production its need more time to localise issue.
I can't repeat problem with same config but another same PC with another site.
What i know today:
Hardware is ok, all test is ok.
Win11 Pro 25H2 is the latest OS with update
Of course latest VS build 14.50.35719, reinstall it twice
Latest drivers update from vendors
PHP is TS mode (fastcgi is crashed too) 8.4.18
With PHP 8.5.0-8.5.3 have the same crash, but 8.5.x still young for Prod.
All VS17 builds workind fine
Build from 23 feb crashing too
I try to disable site by site, modules, and configs.
Maybe not apache issue, maybe something in my script or OS. Or load type. Yes I distribute big static file without nginx, but Apache should be designed for this. Or not?
In crash moment no records in any log. It seems to happen during idle time.
Today I run Application Verifier and waiting for a next crash. |
|
| Back to top |
|
nono303

Joined: 20 Dec 2016 Posts: 220 Location: Lille, FR, EU
|
|
| Back to top |
|
Crafted

Joined: 04 Feb 2026 Posts: 20
|
Posted: Tue 24 Feb '26 12:41 Post subject: |
|
|
Here we go again:
[Tue Feb 24 06:40:35.172260 2026] [mpm_winnt:notice] [pid 4696:tid 424] AH00428: Parent: child process 4244 exited with status 3221226356 -- Restarting.
[Tue Feb 24 06:40:38.094098 2026] [mpm_winnt:notice] [pid 4696:tid 424] AH00455: Apache/2.4.66 (Win64) OpenSSL/3.6.1 configured -- resuming normal operations
[Tue Feb 24 06:40:38.094577 2026] [mpm_winnt:notice] [pid 4696:tid 424] AH00456: Apache Lounge VS17 erver built: Feb 22 2026 13:55:38 |
|
| Back to top |
|
tangent Moderator
Joined: 16 Aug 2020 Posts: 422 Location: UK
|
Posted: Tue 24 Feb '26 22:08 Post subject: |
|
|
Reviewing this lengthy thread over Apache stability, I'm concerned it appears to be focusing on HTTPD build code, rather than considering a resource issue that could well be resolved with configuration changes.
In particular, I note no one's mentioned ThreadStackSize or ThreadsPerChild.
Historically, I came across any number of Windows setups where the default thread stack size wasn't enough, and seem to recall MS chose a lowly figure of 1MB. I'd want to match a Linux figure of 8MB, and scale ThreadsPerChild according to system resources and the available memory. That in turn depends on what else is running on the server, PHP, database, etc.
With mpm_winnt, there is only one process, so you need to allocate sufficient threads to support the expected connection load. In one part of the post, I note Axel.Kam's log mentions 192 worker threads, which sounds pretty low to me. Even if you set ThreadsPerChild at 512, with ThreadStackSize at 8MB that would only take up 4GB of thread stack memory if all threads were active.
The other parameter I used to change was MaxConnectionsPerChild which defaults to 0, meaning unlimited. If any module linked to a child process leaks memory, then eventually it will fail and crash. Limiting the number of connection requests it serves can circumvent this problem, at the expense of some extra overhead in restarting that child process.
If it's not impertinent, resource permitting, I'd suggest considering trying something like this:
| Code: |
<IfModule mpm_winnt_module>
ThreadStackSize 8388608
ThreadsPerChild 512
MaxConnectionsPerChild 2048
</IfModule> |
Other people's views appreciated. |
|
| Back to top |
|
Crafted

Joined: 04 Feb 2026 Posts: 20
|
Posted: Tue 24 Feb '26 23:45 Post subject: |
|
|
| tangent wrote: |
In particular, I note no one's mentioned ThreadStackSize or ThreadsPerChild.
|
| Crafted wrote: |
and everything I tried (set ThreadStackSize 8388608 / AcceptFilter none, switching through different php versions, even tried mod_fcgid) did not worked
|
|
|
| Back to top |
|
RikasMalinka
Joined: 07 Jan 2026 Posts: 8 Location: Poland
|
Posted: Tue 24 Feb '26 23:55 Post subject: |
|
|
I’ve been running Apache HTTP Server 2.4.66 Win64 (build 260223) for more than 24 hours now, and there have been no crashes so far.
This is the most stable run I’ve had with version 2.4.66 to date. |
|
| Back to top |
|
|
|
|
|
|