Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsClean PCRecommendedOne scan can reveal what keeps slowing WindowsLook for cleanup and repair opportunities.Run Scan×
Skip to content
World desk10 min

How to Fix Apache Crashes and MaxRequestWorkers Errors on Ubuntu

A measured, MPM-aware procedure for diagnosing Apache crashes and MaxRequestWorkers exhaustion on Ubuntu without destabilizing the server.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Do not raise MaxRequestWorkers blindly. The message means Apache has reached its configured ceiling for simultaneous requests; it does not prove that the ceiling is too low. First identify the active multi-processing module (MPM), inspect Apache and kernel logs, and check memory, swap, latency, upstream waits, and crashing modules. Then make one measured, MPM-compatible change, validate it, and observe the server under representative traffic.

This guide covers Ubuntu’s mpm_prefork, mpm_worker, and mpm_event, including the documented Apache 2.5 defaults published by the Apache Software Foundation in 2026. Those defaults are Apache documentation values, not guarantees for every Ubuntu package, so verify the configuration installed on your host.

As an Amazon Associate I earn from qualifying purchases.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

What the MaxRequestWorkers message actually means

Apache’s MaxRequestWorkers directive sets the maximum number of simultaneous requests that can be served. When the error log reports that the server reached this setting, every available worker process or thread is busy. New requests may wait in a queue, time out, or be rejected depending on the rest of the configuration.

That event is a capacity signal, not a tuning instruction. A ceiling that is too low can create avoidable queueing, but a ceiling that is too high can consume all available RAM, trigger swapping, invite the kernel’s out-of-memory killer, and make Apache or other services unstable. Apache’s documentation warns that values beyond what the system can handle can prevent startup or destabilize the host.

#1 Best Overall
Sale
TOZO A1 Wireless Earbuds Bluetooth 5.3 Light Weight in Ear Headphones | IPX5 Waterproof,2 Mics for AI Calls,Immersive Premium Sound Bass Headset with Charging Case,32 EQ via App Black
  • [Ultra-Lightweight Ear Buds Designed for Small Ears] Each earbud weighs only 3.7g and features a compact, ergonomic in-ear design made especially for small ears. Secure, low-profile, and comfortable for workouts, all-day wear or overnight sleeping.The ultra-slim profile sits flush in your ear with no hard edges poking or rubbing, so you can even sleep on your side without discomfort.
  • [Immersive Stereo Sound with TOZO OrigX Technology] TOZO OrigX tuning delivers clear vocals, balanced mids, and natural stereo sound for music, podcasts, and videos.
  • [Long Battery Life for Daily Use] Get up to 7 hours of playtime on a single charge, with up to 32 hours total using the charging case—ideal for workdays, commuting, and extended listening sessions.
  • [Bluetooth 5.3 & Stable Connection] Bluetooth 5.3 provides fast pairing, stable wireless performance, and reduced dropouts as you move around home or office.
  • [Deep Bass with Clear Vocals] High-performance drivers produce punchy bass while keeping vocals clean and detailed for everyday listening.

How the directive is counted

Active MPM What MaxRequestWorkers counts Important constraint
prefork Child processes Values above 256 require a suitable ServerLimit.
worker Total request threads The value should align with ThreadsPerChild; invalid values are rounded down and a warning is logged.
event Total request threads The value should align with ThreadsPerChild; invalid values are rounded down and a warning is logged.

Only one MPM may be loaded. A configuration that loads more than one produces a startup error, so determine the active MPM before editing limits.

Why Apache may be crashing

A MaxRequestWorkers warning and a crash can appear during the same traffic spike without one proving the other caused it. Treat them as two related but distinct possibilities:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
  • Resource exhaustion: too many processes or threads for the available RAM, CPU, or swap; slow requests then hold workers longer.
  • Upstream blocking: PHP, a proxy backend, a database, or another application keeps requests occupied while Apache waits.
  • Configuration failure: a syntax error, duplicate directive, missing file, or module-load problem prevents a clean restart.
  • Module or integration fault: a segmentation fault, repeated child exits, or an incompatible third-party module can crash workers independently of the concurrency ceiling.
  • Kernel intervention: the Linux OOM killer may terminate Apache or another process after memory is exhausted.

Use the exact log signature to choose the branch. Search for AH00161, MaxRequestWorkers, segfault, child pid, out of memory, OOM, signal, proxy_fcgi, and the names of recently changed modules.

Capture evidence before editing anything

Preserve timestamps and the current configuration. A restart can erase useful context, and changing several variables at once makes it impossible to identify what fixed or caused the incident.

  1. Check the unit’s immediate state:
    sudo systemctl status apache2 --no-pager
  2. Read service events from the current boot:
    sudo journalctl -u apache2 -b --no-pager
  3. Inspect Apache’s error log, normally /var/log/apache2/error.log, or the path specified by the active ErrorLog directive. The Apache Software Foundation calls the server error log the first place to look when a problem occurs while starting or running the server.
  4. Check kernel messages for memory pressure, killed processes, or hardware-level faults:
    sudo journalctl -k -b --no-pager
  5. Record application and upstream logs for the same minute. Match request latency, PHP or proxy errors, database saturation, and 5xx responses with the Apache and kernel timestamps.

Copy the relevant log block to a safe location before rotating logs or restarting. Include the process ID, signal, module name, and the first error in a sequence; later “child exited” lines are often consequences rather than the original fault.

Identify the active MPM and loaded modules

Run both commands before changing a limit:

apache2ctl -M
apache2ctl -V

Look for exactly one of mpm_prefork_module, mpm_worker_module, or mpm_event_module. apache2ctl -M also reveals PHP integrations, proxy modules, and other components that affect memory use or thread safety. apache2ctl -V shows build-time details that help explain which configuration paths and defaults apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #2
Sale
Smart Watch for Men Women Compatible with iPhone Samsung Android Phone 1.69 inch Full Touch Screen IP68 Waterproof Bluetooh Fitness Tracker Heart Rate/Sleep Monitor (Black)
  • 【IP68 Waterproof Multifunctinal Smart Watch】Torjalph fitness activity tracker smart watch is IP68 waterproof technology ,you can wear it when swimming,handwashing,it's rain-proof which means that you perform multiple exercise modes outside without worrying about sweat or rain corroding your fitness smart watch,and this watch equipped with a 230 mAh large capacity battery magnetic charging ,and this sports activity tracker watch can be used 5-7 days If fully charged.
  • 【Larger 1.83'' Full Screen Watch & Multi-dial Selection】1.83 inch full HD color touch screen smart watch for men / women provides excellent 240*284 resolution image quality ,This Bluetooth smart watch offers a better touch experience and remarkable immersion and ,more than 200 watch faces for you to choose from App"Da Fit ", you can change the dial style according to your mood to wear keeping the world on your wrist
  • 【Accurate Activity Tracker Smart Watch 】sports watch activity tracker uses sweat and dust resistant breathable silicone strap, our Fitness Tracker Smart Watch for Android iOS Phones supports 12 sports modes,walking,running,bicycle,swimming,badminton,basketball,football,rope skipping. This bluetooth calls smart watch for men women is lightweight and stylish, bringing more convenient and relaxing sports experience while also providing more protection.
  • 【Your 24 Hour Personal Daily Health Monitor】Fitness watch for women men full touch screen IP67 waterproof bluetooth smartwatch for Android iOS Phones with heart rate blood pressure monitor multifunction Andriod smart watch with steps counter sleep monitor sports fitness watch, monitoring blood oxygen saturation allows you to understand your physical condition in real time to track fitness progress ,to know your health status in time.
  • 【More Functions Bluetooth Call Smart Watch】This fitness activity smart watch full screen for iPhone and Android phones includes a bunch of new features including:The bluetooth smart watch can hang up the phone, receive and display WhatsAPP /Text /Facebook /Twitter /Messenger reminder.Support sedentary reminder, alarm clock, stopwatch, timer,weather information,music control, remote camera control compatible with Android 5.0 and above or iOS 9.0 and above smartphones.

On Ubuntu, inspect /etc/apache2/mods-enabled/ and the enabled MPM symlink. The corresponding file in /etc/apache2/mods-available/ usually contains the MPM directives. Keep a copy of the currently working files and note the command that will restore them.

Do not switch MPM casually

Changing from prefork to worker or event changes the process and thread model. PHP and other modules must be thread-safe for a threaded MPM; an integration that works under prefork may crash or behave incorrectly after a switch. Make an MPM change only in a maintenance window, after checking every loaded module and preparing a tested rollback.

Validate the configuration before a reload

Always test syntax and module loading first:

sudo apache2ctl configtest

A successful result means Apache can parse the configuration; it does not prove that the selected limits fit the machine or that an application module is stable under load. Fix duplicate directives, missing include files, invalid values, and module-load errors before applying anything.

Use a graceful reload when the process model and module set do not require a full restart:

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
sudo systemctl reload apache2

Use a restart only when required by the change or when a controlled maintenance window allows it. If the service fails to return, inspect systemctl status and the journal immediately, then restore the last known-good configuration and rerun configtest.

Decide whether the ceiling is the symptom or the cause

Repeated MaxRequestWorkers messages require measurements, not a larger number by default. Examine:

Rank #3
New Bee Guitar Cable 10ft Electric Instrument Bass AMP Cord
  • [Low Noise High Fidelity] New bee guitar cord with 22AWG oxygen-free-copper center conductors provides enhanced signal transfer, the PVC insulation material and the high-density stranded copper double shield provide noise rejection for quiet operation
  • [Ideal for Choice] New bee 1/4 straight and right angle metal connectors, ensures a secure connection in any instrument, pedal, or amp jack. L shape great fro on stage guitar stands
  • [Wide Compatible] Suitable for mixer, power amplifier, microphone, effector, decoder, equalizer, electoronic organ, electric guitar, electric bass and other electronic equipments. Widely used in the installation of smart home, karaoke speaker, professional stage audio, etc
  • [Easy Disassemble] Making incidental repairs quick and easy! Very nice, flexible cable
  • [Dont Hesite to Order] 24 hours customer services and professional technology team are standing by
  • Resident memory of Apache processes, total RAM, swap activity, and free headroom.
  • CPU saturation and run-queue pressure.
  • Request latency and the time spent waiting for PHP, proxy backends, databases, or remote services.
  • Keep-alive behavior and whether idle connections occupy workers for long periods.
  • Current process and thread counts compared with the configured ceiling.
  • 5xx rates, connection timeouts, and upstream health during the same interval.

A low ceiling can queue otherwise healthy requests. A high ceiling can allow enough concurrent work to exhaust memory and cause swapping, OOM kills, child crashes, or a complete outage. If the host starts swapping or the kernel reports OOM activity, reduce concurrency and fix the memory-hungry module or upstream service instead of continuing to raise the limit.

Set limits according to the active MPM

prefork: one worker process per request

Under prefork, MaxRequestWorkers is the maximum number of child processes. The Apache Software Foundation’s current Apache 2.5 module documentation lists 256 as the documented default. Each child carries the memory cost of the loaded modules, so prefork can become expensive on a host that also runs PHP, a database, a proxy, monitoring agents, or background jobs.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Measure representative resident memory while the real module set is active. Reserve headroom for the operating system and every other service, then treat the resulting concurrency estimate as a starting point. Validate it against observed peak traffic rather than assuming every child uses the same amount of memory at all times.

If you need a value above 256, the corresponding ServerLimit must be high enough. Raise ServerLimit only as far as required: Apache warns that unnecessarily high values allocate additional shared memory and that excessive limits can prevent startup or destabilize the system.

worker and event: threads across child processes

For worker and event, MaxRequestWorkers is the total thread ceiling, not the number of child processes. The documented Apache relationship is 16 ServerLimit multiplied by 25 ThreadsPerChild, yielding 400 request threads. This is an Apache documentation default relationship, not an Ubuntu guarantee.

The value should be at least ThreadsPerChild and preferably an integer multiple of it. If it is not, Apache rounds the value down and logs a warning. For example, a setting that does not divide cleanly into the configured thread count does not provide the concurrency you may think it does. Check the startup log after every change to confirm the effective value.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Rank #4
BSIMB 15.6" Digital Family Calendar & Chore Chart, No Subscription Fees
  • Digital Family Calendar: BSIMB digital calendar wall touch screen puts an end to your chaotic life. Designed for busy families, the digital calendar keeps you organised and in step with your family. Assign different colours and tasks to each family member to make family scheduling easier and more intuitive.
  • Easy Setup and Auto-Sync: Plug in, connect to WLAN and auto-syn your electric calendar in minutes. Digital wall calendar compatible with Google calendar, iCloud calendar, Outlook calendar, Cozi calendar and Yahoo calendar. Add events directly on the device or through the ecalendar app. Electronic calendar stays current whether you're at work or traveling—no manual updates needed.
  • All-In-One Home Assistant: Smart calendar builds habits and encourage independence with personalised chores. Display daily meal plan to reduce the daily ‘What's for dinner?’ stress. To-do lists keep track of everything you want. Turning chores into valuable achievements with stars and rewards, making life easier and more enjoyable.
  • Manage Anytime Anywhere: BSIMB electronic calendar for family stay connected with the powerful ecalendar app. Access and manage your digital wall calendar anytime, anywhere with free features like stars & rewards, photo screensaver, chore charts, meals plans, to-do lists etc. Electronic planner paid features like Magic Import tailor advanced tools for users with special needs.
  • Stay in Touch with Loved Ones: Share photos or videos from your phone to electronic wall calendar with app, instantly update your life moment, and keep in touch with your family, especially those who are far away; you can also surprise your smart calendar digital wall by sending him a wish card; it's also great for keeping tech-illiterate elders in touch with the youngsters.

Threaded MPMs usually use fewer processes than prefork, but each process and thread still consumes memory, stack space, and module-specific resources. Measure the actual resident footprint and include thread behavior in the headroom calculation.

ServerLimit is not a performance knob

ServerLimit defines how far the process or thread model can scale; it is not a reason to increase concurrency by itself. Raising it without a measured need can reserve extra shared memory, permit an unsafe MaxRequestWorkers value, or make startup fail. Change one directive at a time so the resulting behavior is attributable.

Apply a controlled change on Ubuntu

  1. Back up the active MPM file and note the current values in /etc/apache2/mods-enabled/.
  2. Edit only the directive that your measurements justify. Keep ServerLimit, ThreadsPerChild, and MaxRequestWorkers consistent with the active MPM.
  3. Run sudo apache2ctl configtest. Do not reload if it fails.
  4. Apply sudo systemctl reload apache2 when a graceful reload is appropriate.
  5. Immediately check sudo systemctl status apache2 --no-pager and the error log for rounding warnings, startup failures, or child exits.
  6. Observe RAM, swap, CPU, latency, upstream wait time, and 5xx responses through a representative traffic period.

Do not increase several limits in one edit. If the new ceiling improves queueing but memory rises sharply, revert it and address the slow or memory-heavy dependency. If memory remains healthy but requests still wait, investigate upstream latency or keep-alive behavior rather than adding workers indefinitely.

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Investigate crashes independently from capacity

For segfault, signal, repeated child-PID exits, or core-dump records, correlate Apache’s error log with sudo journalctl -k -b --no-pager, the service journal, and the loaded-module list. A crash that repeats at a particular module, protocol feature, or backend call points to a component fault; a crash that follows OOM messages points to resource exhaustion.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

In a controlled maintenance window, isolate recently changed third-party modules, PHP integrations, proxy backends, or protocol features one at a time. Keep the MPM and worker-limit changes reversible so you can distinguish a module defect from a capacity problem. Do not declare the MaxRequestWorkers warning the cause merely because it appears shortly before a child exits.

Common failure patterns and the appropriate response

The warning appears, but RAM and swap remain comfortable

Check request latency, backend waits, and keep-alive occupancy. A conservative ceiling may be queuing traffic while the machine still has capacity. Raise the limit only after confirming that the added workers or threads will not overwhelm the slow dependency, and verify the change with latency and 5xx measurements.

Raising the value causes swapping

Revert to the previous known-good value. Inspect per-process or per-thread memory, PHP or proxy behavior, and other services sharing the host. Reduce concurrency until swap activity stops, then fix the memory consumer or move it to a host with adequate capacity.

Apache refuses to start after an edit

Run sudo apache2ctl configtest, read journalctl -u apache2 -b, and look for duplicate directives, a missing include, an invalid MPM combination, or a ServerLimit/MaxRequestWorkers mismatch. Restore the backup if the cause is not immediately clear; do not repeatedly restart with an unvalidated file.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The log says a value was rounded down

Review ThreadsPerChild and make MaxRequestWorkers an appropriate multiple for worker or event. Confirm the effective value in the startup log after reloading. The rounded value, not the number typed in the file, is what limits concurrency.

Workers crash with segfault or signal entries

Compare the crash timestamp with kernel messages, core-dump records, and module changes. Temporarily isolate the suspect integration in a maintenance window and keep a rollback path. A larger worker pool can make a faulty module crash more often; it is not a substitute for finding the offending component.

Compare the three remediation paths

Option Use when Check first Main risk
Increase MaxRequestWorkers Measured headroom exists and requests are queuing at a genuinely low ceiling. MPM semantics, memory per process or thread, upstream capacity, and latency. RAM exhaustion, swapping, OOM kills, or greater instability.
Change MPM The current process model conflicts with the module set or workload and a tested migration is possible. Exactly one MPM, module thread-safety, PHP and proxy compatibility, and rollback complexity. Startup failures, incompatible modules, or new crash behavior.
Fix upstream or module behavior Workers are occupied by slow backends, memory-heavy integrations, or crashing components. Correlated logs, request timing, backend health, and recent changes. Leaving the immediate queueing symptom while the root cause persists.

Judge the result using peak concurrency, queueing, memory, swap, CPU, request latency, 5xx rate, crash frequency, and upstream health. A change is not a repair if Apache stays “up” while the host is swapping or users receive slower responses.

Verify and document the repair

  1. Confirm sudo apache2ctl configtest succeeds.
  2. Confirm sudo systemctl status apache2 --no-pager reports a healthy service.
  3. Check the error log for repeated MaxRequestWorkers exhaustion, rounding warnings, child exits, segfaults, and signals.
  4. Watch RAM, swap, CPU, request latency, 5xx responses, and upstream health during representative traffic.
  5. Record the active MPM, ServerLimit, ThreadsPerChild, MaxRequestWorkers, observed peak concurrency, and the rollback command.

If the warning returns only during an unusual burst, document the burst and the measured resource state rather than raising limits permanently without evidence. If crashes continue, preserve the correlated logs and pursue the module, upstream, or kernel cause separately from concurrency tuning.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Official guidance in practical terms

“The server error log is the first place to look when a problem occurs with starting or running the server.”

Apache Software Foundation, Apache HTTP Server logging documentation

“The MaxRequestWorkers directive sets the limit on the number of simultaneous requests that will be served.”

Apache Software Foundation, mpm_common directive reference

“If both ServerLimit and MaxRequestWorkers are set to values higher than the system can handle, Apache httpd may not start or the system may become unstable.”

Apache Software Foundation, mpm_common directive reference

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Outdated Drivers Are Slowing You DownFree scan - exact matches
PC Slower Than It Used to Be?Free scan - under a minute

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.