Recommended Configuration on Windows systems
OpCache
It is highly recommended to enable OpCache. This extension is included with PHP for Windows. It compiles and optimizes PHP scripts and caches them in memory so that they aren't compiled every time the page is loaded.
Set the php.ini to:
Example #1 Recommended OpCache configuration
opcache.enable=On opcache.enable_cli=On
WinCache
It is recommended to use WinCache if using IIS, especially if in a shared web hosting environment or using networked file storage (NAS). Note that WinCache is no longer supported as of PHP 8.0.0. All PHP Applications automatically benefit from WinCache's file cache feature. File system operations are cached in memory. WinCache also can cache user objects in memory and share them between php.exe or php-cgi.exe processes (share objects between requests). Many major web applications have a plugin or extension or configuration option to make use of the WinCache user object cache. If you need high performance, you should use the object cache in your applications. See: » http://pecl.php.net/package/WinCache to download a WinCache DLL (or tgz) to your PHP extensions directory (extensions_dir in your php.ini). Set the php.ini to:
Example #2 Recommended WinCache configuration
extension=php_wincache.dll wincache.fcenabled=1 wincache.ocenabled=1 ; removed as of wincache 2.0.0.0
IIS Configuration
In IIS Manager, Install FastCGI module and add a handler mapping for `.php` to the path to PHP-CGI.exe (not PHP.exe)
You may use the APPCMD command line tool to script IIS configuration.
Database
You'll probably need a Database Server. Popular databases provide PHP extensions to use them. If your web site doesn't get a lot of traffic, you can run your database server on the same server as your web server. Many popular database servers run on Windows.
PHP includes mysqli and pdo_mysql extensions.