Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
If Windows reports that php8ts.dll is missing when Apache, IIS, or a PHP command starts, reinstall the complete PHP build that matches your server interface and CPU architecture, then install the matching Microsoft Visual C++ Redistributable. Apache module installations normally require a Thread-Safe (TS) PHP build; IIS and other FastCGI installations require Non-Thread-Safe (NTS). Copying a single DLL from an untrusted download site is not a safe repair because the DLL must match the rest of PHP.
The sequence below covers Windows 11 and Windows 10: identify the server interface, select TS or NTS, match x64 or x86, install the corresponding runtime, extract PHP to a stable folder, update the server configuration, and verify the active paths and logs.
As an Amazon Associate I earn from qualifying purchases.
The Tool Desk
Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →What is php8ts.dll, and why does Windows say it is missing?
php8ts.dll is the Windows PHP runtime library for a Thread-Safe build. “TS” describes how PHP is compiled to work when a multithreaded web server loads PHP as a module. A message such as “php8ts.dll was not found” means the process that is starting PHP cannot load that library or one of the libraries it depends on; it does not necessarily mean that the file was deleted.
The most useful clue is how PHP is being loaded. Apache’s module interface is designed for a TS build. IIS normally passes requests to php-cgi.exe through FastCGI and should use an NTS build; NTS is also the usual choice for command-line PHP. Selecting the opposite build can produce a missing-DLL or startup failure even when a file with the expected name exists on disk.
Popular on Amazon
- BLUE LIGHT BLOCKING GLASSES: Our blue light glasses for women boast UV400 protection, blocking harmful blue rays from computer screens. With these bluelight glasses women, you can enjoy gaming, reading, or watching TV with no worries of eye strain.
- EYE RELIEF: Our blue light glasses are engineered to reduce blurry vision or strain caused by prolonged screen time. These womens blue light glasses aid in better sleep by preventing blue light from disrupting your natural sleep cycle, helping you fall asleep faster and enjoy a more restful night's sleep, making them the perfect christmas present.
- COMFORTABLE: Crafted from durable material, our trendy blue light glasses for woman or blue light glasses men ensure long-lasting comfort. The high-transmittance lenses accessories, gamer gifts for men, help keep your eyes relaxed. Perfect stocking stuffers, gifts for gamers men, christmas gifts for men, halloween costumes.
- LIGHTWEIGHT: These clear blue light glasses feature a lightweight frame, meaning they’ll stay comfy for long-term wear. Perfect as blue blockers glasses for women or mens blue light glasses, these non-prescription fake glasses for men can be worn throughout the day. The blue light blocking glasses women feature polycarbonate HD lenses, which are anti-reflective and restore true color.
- WORRY-FREE PURCHASE: If you experience any issues, our support team is ready to assist you quickly. These are the perfect costume glasses for cosplay dressing up.
| What you observe | Likely reason | Correct direction |
|---|---|---|
| Apache fails while loading its PHP module | The PHP folder is incomplete, the module points to the wrong folder, or the package is NTS instead of TS. | Use a complete TS package and make Apache reference that same installation. |
| IIS or FastCGI reports a PHP startup failure | An Apache-oriented TS package was selected, or the FastCGI path points to an old installation. | Use a complete NTS package and point FastCGI to its php-cgi.exe. |
| “Bad image,” error 0xc000007b, or an immediate process exit | The PHP architecture and the process or runtime architecture do not agree. | Use x64 throughout or x86 throughout, including the Visual C++ runtime. |
| A VCRUNTIME or MSVCP file is reported as missing | The required Visual C++ Redistributable is absent or its architecture is wrong. | Install the Microsoft redistributable that matches the PHP build. |
| The file exists, but the server still cannot find it | The service is using a different configured path, an old PATH entry, or a moved installation. | Inspect the server configuration and logs, then restart the service. |
Which PHP build should I use with Apache, IIS, or the command line?
Choose the build from the interface that loads PHP, not from the name of the missing file alone. The following mapping prevents the most common TS/NTS mistake.
| Use case | PHP build | Executable or module involved |
|---|---|---|
| Apache loads PHP as a server module | Thread-Safe (TS) | Apache’s PHP module, such as the module included in the matching PHP package |
| IIS with FastCGI | Non-Thread-Safe (NTS) | php-cgi.exe registered in IIS FastCGI settings |
| Another FastCGI web server | Non-Thread-Safe (NTS) | The server’s configured PHP CGI process |
| Command-line scripts | Usually Non-Thread-Safe (NTS) | php.exe launched from a terminal, task, or script |
Do not try to make one installation serve incompatible assumptions. A folder configured as an Apache TS module should not also be treated as an IIS NTS installation unless you have deliberately installed and configured separate matching builds.
Recommended Free Tools
What should I check before replacing PHP?
Record the current configuration before changing it. This makes it possible to undo a path change and tells you whether the problem belongs to Apache, IIS, PHP itself, or Windows.
- Open a terminal and run
php -v. If Windows cannot find the command, run it from the PHP folder or use the server’s configured executable path. - Run
php --inito see whichphp.inithe command-line binary loads. This may differ from the file used by a web server. - On PowerShell, use
Get-Command php; in Command Prompt, usewhere php. Multiple results indicate that an old PHP folder may be taking precedence. - For Apache, note the PHP module path in the Apache configuration and the location of the active error log.
- For IIS, open IIS Manager and record the site’s handler mapping and the FastCGI application path. Confirm whether the application pool is configured for 32-bit applications.
- Check whether the existing PHP folder is x64 or x86 and whether the web server process has the same architecture.
- Back up
php.ini, custom extensions, and any application-specific configuration. Do not delete the old folder until the replacement has been tested.
How do I fix php8ts.dll step by step?
Perform these steps in order. They replace an inconsistent installation instead of trying to repair one DLL in isolation.
1. Identify the server interface
Decide whether PHP is loaded as an Apache module, through IIS FastCGI, through another FastCGI server, or only from the command line. Apache module loading calls for TS; IIS and FastCGI call for NTS. If you are unsure, inspect the server configuration rather than guessing from the error text.
2. Match x64 or x86
Use one architecture for the PHP package, the web server or PHP process, and the Visual C++ runtime. An x64 PHP build needs the x64 runtime; an x86 PHP build needs the x86 runtime. On a 64-bit edition of Windows, an x86 web stack can still be valid, but every component in that stack must remain x86.
Free tools Windows power users keep installed
One-click scans. No signup required.
Also popular on Amazon
- WINDEX GAMING WIPES: effortlessly clean all your gaming gear and gaming electronics in one easy step with our new Windex Gaming Wipes
- AMMONIA FREE: our ammonia-free formula is safe to use on all of your favorite gaming equipment like consoles, headsets, controllers, screens, keyboards, and more
- PRE-MOISTENED WIPES: each wipe instantly removes dust, dirt, and stubborn smudges and fingerprints leaving a streak-free shine
- ANTI-STATIC: great for cleaning and wiping down your gaming gear and electronics leaving behind no visible residue
- COMPACT RESEALABLE PACKAGE: store your pack of Windex Gaming Wipes anywhere in your home for whenever a quick and easy wipedown is needed
3. Download a complete official PHP Windows package
Use the PHP Windows downloads page and select the current supported release for your application. Choose the ZIP package with the TS or NTS designation and x64 or x86 designation you identified. The package should contain the matching executable, libraries, configuration template, and any server module required by that build.
Avoid downloading php8ts.dll by itself. A separately copied DLL can have a different PHP version, compiler runtime, architecture, or build options from the executable and extensions that load it.
4. Install the matching Visual C++ Redistributable
Install the current Microsoft Visual C++ Redistributable package for the same architecture as PHP. PHP’s Windows builds require this runtime, and Microsoft provides separate x86 and x64 packages. Installing only the x64 package does not satisfy an x86 PHP process, and installing only x86 does not satisfy an x64 process.
If an older runtime is already installed, do not assume it is the right one for the selected PHP release. Use the runtime specified for the PHP Windows build and restart the relevant service after installation.
5. Extract PHP to a stable folder
Extract the ZIP to a permanent location such as C:PHP or another folder reserved for that version. Avoid a temporary download directory, a location that may be cleaned automatically, or a folder that will be renamed while the service is running. Check that the extracted folder contains the expected executable and runtime files, including php.exe and, for a TS package, the matching Apache module.
Copy php.ini-development to php.ini as a starting configuration, then review the application’s required settings. Set extension_dir to the extensions folder for this same installation when the configuration requires an explicit path. Do not copy extensions from an unrelated PHP version.
Also popular on Amazon
- Ergonomic & Adjustable Design: Fight "text neck" and improve your posture. Designed for comfort, it offers an adjustable height (7.1in-8.5in) (1.4in adjustable range) and angle (5°-85°) Please note: cell phone stand is only 9 inches tall—the length of a standard pencil
- Without blocking subtitles Perfect for office desk Tiktok Face Time Zoom video—this is the ultimate kitchen desk essential for phones! Perfect viewing experience while reducing neck back strain, A must-have for gamers streamers desk, and anyone who values both style and support!
- Sleek & Stable Design fits Otterbox Case: Say goodbye to bent cables, tangles, and tip-overs! LISEN’s stylish adjustable desk phone holder features a built-in charging hole and smart cable management, keeping your phone secure and your workspace clutter-free cool gadgets for men
- ANTI-SLIP DESIGN free hands: The under 10.00 items easy gadgets back and the bottom of this kitchen essentials for women are fully covered by anti-skid silicone, which LISEN stand up desk decor can provide maximum protection device from any scratches and slides
- Your Perfect Viewing Companion:If your product arrives damaged or breaks within 365 days, reach out to LISEN for a quick and hassle-free solution. Struggling with assembly, like tightening the screw? We’ve got your back! Your experience matters to us. (Product including: phone Holder stand*1, screw*1, hexagon screwdriver*1, specification*1)
6. Point Apache to the new TS installation
In the Apache configuration, update the PHP module and PHP configuration directory to the extracted TS folder. Use the exact module file supplied with that package and keep all PHP paths consistent; a module from one folder combined with a php.ini or extensions directory from another can recreate the same failure.
Validate the configuration before restarting. If Apache provides a configuration-test command in your installation, run it and correct any path or syntax error it reports. Then restart Apache from its service manager or with the command supplied by that installation.
7. Point IIS FastCGI to the new NTS installation
In IIS Manager, open FastCGI Settings and edit or create the application entry for the new folder’s php-cgi.exe. Update the site’s handler mapping so PHP requests use that same executable. Select the NTS package; do not point IIS at an Apache TS module.
Check the application pool’s 32-bit setting against the PHP architecture. An x86 PHP process requires a 32-bit-compatible application-pool configuration, while an x64 PHP process requires a matching 64-bit setup. Recycle the application pool and restart the World Wide Web Publishing Service after saving the changes.
8. Make command-line PHP use the intended folder
If the error occurs in a terminal, scheduled task, Composer job, or game-server script, update the user or system PATH so the intended PHP folder appears before obsolete entries. Open a new terminal and run where php, php -v, and php --ini again. A web server’s PHP path is configured separately, so a successful command-line check does not prove that Apache or IIS is using the same installation.
9. Restart and verify
Restart the web server, application pool, scheduled task, or shell that produced the message. Verify the result with php -v for command-line use and with a controlled PHP status page or the application’s own diagnostic page for web use. Remove a temporary diagnostic page after testing because it can expose configuration details.
Quick wins for a faster PC:
Repair Windows errors before they cause bigger problemsFix Now →Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Also popular on Amazon
- Easy Installation: Our gaming lights have been designed to enhance your entertainment experience. Simply position the led light bar next to your TV or game console to create a game room environment with ease. They come with USB power and a 60 inch cord for direct mounting and mobility
- Audio Syncing & Extensive Mode: The built-in high-sensitivity music sensor allows you to sync the TV led lights to your favorite music. Lights react and move to the beat of music, film and game audio, creating an incredible immersive sound and light experience – and all without the need for an additional hub. You can choose from 64+ patterns, including strobe, illusion, jump, energy, gradient, running, chasing, fluttering mode etc. Each mode can be applied to different scenes
- 64+ Chasing IC+RGB & W Effect: The independent control design of IC+RGB and white all-in-one multifunctional rgbw led bar lights monitor backlight allows you to easily switch the led lights for desk between IC+RGB and white to enjoy a variety of lighting effects, you can choose white lighting mode with high brightness for better illumination when working, etc. Choose IC+RGB lighting mode when you need to create an entertaining atmosphere for the light show, 16 million colours of Color changing rgb light bar let you dance to the beat and create a dynamic party atmosphere
- Dynamic and Dimmable Lights: 1%-full brightness free brightness adjustment gives you the flexibility to adjust dimmable led light bar for room decorations or a variety of occasions
- USB Powered: USB light bars for room can be powered by powernank, usb charger, TV, Monitor, laptop PC mainframe, making behind TV led lighting bar easy to install in any location.TV led lights are powered by the TV usb interface / PC mainframe, can be turned on/off synchronously with TV / PC
Read the server’s error log immediately after the restart. The first new error is usually more useful than a cached browser message: it can distinguish a missing module path from a missing Visual C++ dependency, a permission problem, or a TS/NTS mismatch.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.What if php8ts.dll is still reported as missing?
Apache still fails to start
Confirm that Apache’s module path names the file in the newly extracted TS folder and that the file’s architecture matches Apache. Check for a second PHP module line or an old PHP configuration directory. Remove or disable the stale reference, test the Apache configuration, and restart only after the test succeeds.
IIS reports php8ts.dll
This message strongly suggests that IIS is pointed at the wrong kind of package or an old path. Recheck FastCGI Settings and the handler mapping, replace the executable with the NTS package’s php-cgi.exe, and ensure the application pool’s bitness agrees with that package.
The error names a Visual C++ file instead
Install or repair the Visual C++ Redistributable for the PHP architecture. Do not substitute a DLL copied from another computer; the redistributable is the supported way to install the runtime files as a matching set.
PHP works in the terminal but not in the website
The terminal and web server are probably using different PHP folders or different php.ini files. Compare where php and php --ini with the executable and configuration paths shown in Apache or IIS, then align the web server configuration deliberately.
The website starts but an extension now fails
Extensions must match the PHP version, architecture, and thread model of the new build. Reinstall extensions from the appropriate PECL or vendor distribution instead of copying old extension DLLs into the new folder, and enable only extensions that the application actually needs.
Also popular on Amazon
- Compatible with Wide Screens - To ensure compatibility with the dual monitor mount, your each monitor must meet three conditions at the same time: First, computer screens size range: 13 to 32 inches. Second, screen weight range: 4.4 to 19.8 lbs. Third, the back of the monitor screen must have VESA mounting holes with a pitch of 75x75mm or 100x100mm.
- Regarding the compatibility with desks - Your desk must meet three conditions at the same time: First, desk material: Only wooden desks are recommended, plastic or glass desks cannot be used. Second, desk thickness range: 0.59" - 3.54". Third, the bottom of the desk should not have any cross beams or panels, as this will interfere with installation. We recommend carefully checking that your desk and monitors meets all above conditions before purchasing.
- Dual C-Clamp Hold - Worried your dual monitors might wobble or slip? Our upgraded base uses a larger platform plus a dual C-clamp structure to lock the dual monitor arm firmly to your desk. Each arm safely keeps your screens steady while you type, click and game—no shaking, no sliding, just a clean and secure setup you can trust every day. It also provides Grommet Mounting installation choice, both options ensure stable and secure fixation for your 0.59" - 3.54" desk.
- Full-Motion Adjustment For Comfortable View - Pull the screen closer when you’re deep in a spreadsheet, push it back to watch videos, or rotate to portrait for coding — moving everything smoothly with just one hand. The monitor stand offers +85°/-50° tilt, ±90° swivel and 360° rotation. Raise your monitor up to 15.75″ to support a healthy sitting posture. Whether you’re working from home, gaming through the night, or switching between video calls and documents, getting the screens to your natural line of sight helps relieve neck, shoulder and back strain so you can stay focused longer with less fatigue.
- Keep Your Desk Organized: By lifting both screens off the desktop, this dual monitor stand opens up valuable space for your keyboard, notebook, docking station or a simple, clutter-free work area. Built-in cable management guides wires along the arms, keeping cords out of sight and out of the way. Enjoy a tidy, modern workstation that looks as good as it feels to use.
Is it safe to download php8ts.dll from a DLL website?
No. A random DLL-download site cannot establish that its file was built for your PHP version, compiler runtime, architecture, or server interface. Even a file with the right name can leave the installation internally inconsistent or introduce an untrusted binary.
The safe repair is a complete PHP Windows binary package from the official distribution route, followed by the matching Visual C++ Redistributable. Separately built PHP extensions should come from their appropriate PECL pages or the extension publisher and must match the selected PHP build.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minuteWindows Errors? Fix Them Before They Spread
Repair common Windows errors and clear accumulated junk for a smoother, more stable PC - no reinstall needed.Free scan · no reinstallWill PHP 8.3 or later run on Windows 10 and Windows 11?
PHP’s Windows documentation states that PHP 8.3 and later require Windows 8 or Windows Server 2012 or newer. Windows 10 and Windows 11 meet that operating-system floor, provided the PHP architecture, server interface, and Visual C++ runtime are also correct.
That requirement does not make every old application compatible with every new PHP release. Check the application’s supported PHP versions and extension requirements before replacing a working deployment, and keep the previous folder available for rollback until the site or script has passed its normal checks.
Which repair choice is appropriate?
| Choice | When it is appropriate | Why |
|---|---|---|
| Complete official TS package | Apache module loading | Supplies a consistent runtime and module for Apache’s multithreaded interface. |
| Complete official NTS package | IIS, FastCGI, or most command-line deployments | Matches the process model used by those interfaces. |
| Matching Visual C++ Redistributable | PHP starts with a VCRUNTIME or MSVCP error, or the runtime is absent | Provides the compiler runtime required by the PHP Windows build. |
| Isolated DLL replacement | Not recommended | Does not guarantee matching version, architecture, dependencies, or trust. |
How can I prevent the error after the repair?
- Keep each PHP version in its own stable folder and change the server path deliberately when upgrading.
- Document whether each service uses TS or NTS and x64 or x86.
- Keep the Visual C++ Redistributable aligned with the architecture of every active PHP installation.
- After an upgrade, verify the executable path, loaded
php.ini, extension directory, and server error log before declaring the migration complete. - Remove obsolete PATH entries and stale Apache or IIS mappings only after the new installation works, so rollback remains possible.
- Use current supported PHP and runtime packages when the application allows it; an old, unmaintained package can retain dependency and security problems even when the missing-DLL message is gone.
If you want an optional shortcut after trying the manual steps, Outbyte PC Repair can address more than 100 common Windows issues where possible, including broken system elements, and includes cleanup, vulnerability checks, a real-time boost, and an app-crash log. It runs on Windows 11, 10, 8, and 7; its free trial is offered by category for at least two days before a paid subscription, and it complements—not replaces—antivirus protection. Results vary, and no tool repairs every crash.
Frequently Asked Questions
Why does php -v work while Apache still reports a missing DLL?
The command may be resolving a different PHP folder through PATH than the one Apache loads as a module. Compare where php and php --ini with Apache’s configured module and PHP directories; they can legitimately be separate installations.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
How can I tell whether an IIS application pool is running 32-bit mode?
In IIS Manager, open Application Pools, select the pool, choose Advanced Settings, and inspect Enable 32-Bit Applications. The setting must agree with the x86 or x64 PHP and php-cgi.exe registered for that site.
Can I keep two PHP versions on the same Windows computer?
Yes, if each version has its own folder and the web server, PATH, php.ini, and extension directory are explicitly assigned. Avoid mixing files between versions, and test one service at a time so an old mapping cannot silently load the wrong runtime.
Will changing from TS to NTS require reinstalling PHP extensions?
Often, yes. Extensions are built for a particular PHP version, architecture, and thread model, so an extension compiled for TS may not load in an NTS installation even when the PHP versions look similar. Obtain a build that matches the new configuration rather than reusing an incompatible DLL.
Quick Recap
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.

