Jul 20, 2017 This update for Windows Server 2008 will include support for both TLS 1.1 and TLS 1.2. For application compatibility purposes, these protocols will be disabled by default in a manner similar to the TLS 1.1/TLS 1.2 support that was disabled by default in Windows 7 and Windows Server 2008 R2. Mar 23, 2018 How to Enable TLS 1.2, only on Windows Server 2008 R2 and IIS 7.5. Fixed SSLv3 Poodle Issue in windows server by disabling SSLv3 and Enable TLS. Jun 26, 2017 We strongly recommend that all users upgrade to Microsoft Internet Information Services (IIS) version 7.0 running on Microsoft Windows Server 2008. IIS 7.0 significantly increases Web infrastructure security. For more information about IIS security-related topics, visit the following Microsoft Web site.
- Enable Iis Windows Server 2008 R2
- Enable Ssl Iis Windows Server 2008 R2
- Enable Iis Windows Server 2008 R2
- Enable Ftp Iis Windows Server 2008
Installing and Enabling IIS and FTP on Windows Server 2012; How to Enable / Disable Multiple RDP Sessions in Windows Server 2008 or 2008 R2, and Windows Server 2012; How do I generate an SSL CSR for a Linux or Windows Server; How to add additional IP addresses to your Windows server; Unable to Progress with 2008 Windows Updates. Jul 28, 2010 One of most popular development platforms on the web is PHP which powers many popular applications and sites such as Facebook, WordPress and Joomla. While most of these systems are ‘designed’ to be used on a Linux system running the Apache Web Server, you can deploy PHP applications via IIS 7 on your Windows Server 2008 system.
by Tali Smith
Introduction
Internet Information Services 7 (IIS 7) and above comes with extended support for application frameworks through FastCGI, an open protocol supported by many open-source application frameworks that otherwise may not support stable and high-performance native integration with IIS.FastCGI provides a high-performance alternative to the Common Gateway Interface (CGI), a standard way for external applications to interface with Web servers that has been supported as part of the IIS feature set since the first release.
For example, PHP traditionally runs on IIS either as an ISAPI extension or as a CGI program. CGI programs are executables launched by the Web server to output dynamic information; CGI applications run in a separate process that is created at the start of each request and terminated at the end. The 'one process per request' model makes CGI programs simple to implement but can limit efficiency and scalability. ISAPI extensions execute inside the IIS worker process on multiple threads.
FastCGI lets a single, long-running process handle multiple user requests; it retains the simplicity of the CGI programming model while eliminating much of the overhead. FastCGI addresses the performance issues inherent in CGI by providing a mechanism to reuse a single process over and over again for many requests. Additionally, FastCGI maintains compatibility with non-thread-safe libraries by providing a pool of reusable processes and ensuring that each process handles only one request at a time.
The FastCGI module lets PHP developers get dramatically better performance, scalability, and reliability when running on Windows® operating systems. The FastCGI module also enables easy integration with the new features of IIS (such as the new output caching features) and with Microsoft® ASP.NET.
Enable Iis Windows Server 2008 R2
Before You Begin
Windows Server® 2008 R2, Windows Server® 2008, Windows Vista®, or Windows® 7, and IIS 7 or above must be installed.
Enable FastCGI Support
- Add the CGI role service by going to Server Manager > Roles > Add Role Services.
- Under Application Development, select the CGI check box. This enables both the CGI and FastCGI services (selecting CGI enables both CGI and FastCGI).
Figure 1: Select Role Services page - Confirm the selections on the Confirm Installation Selection page, and then click Install.
- The Installation Results page shows that the installation succeeded. Click Close.
- The CGI role service appears under the IIS panel.
Enable FastCGI Support in Windows 7 and Windows Vista SP1
IIS 7.0 for Windows Vista® Service Pack 1 (SP1) includes a built-in FastCGI component. (Note that IIS 7.0 included in Windows Vista without SP1 does not include FastCGI component.) To get FastCGI support on IIS 7.0 in Windows Vista, you must upgrade to Windows Vista SP1.
The steps to enable FastCGI in Windows 7 are similar.
- Add the CGI role service by going to Control Panel > Programs and Features > Turn Windows features on or off.Figure 2: Windows Features page
Install the Update for FastCGI Module
The update for the IIS FastCGI module fixes several known compatibility issues with popular PHP applications. Install the update from one of the following locations:
Install the Administration Pack for IIS 7.0 and Above
The IIS 7.0 Administration Pack adds to the set of management features that ship with IIS to include Administration UI support for ASP.NET authorization, custom errors, FastCGI configuration, request filtering, and much more. The Administration Pack also provides a generic configuration editor that is capable of setting any IIS configuration setting and automatically generating scripts to make the task easily repeatable.
Note
This article uses information from Using FasCGI to Host PHP Applications on IIS 7.0 and Above by Ruslan Yakushev, published on December 5, 2007.
See also
Enable Ssl Iis Windows Server 2008 R2
One of most popular development platforms on the web is PHP which powers many popular applications and sites such as Facebook, WordPress and Joomla. While most of these systems are ‘designed’ to be used on a Linux system running the Apache Web Server, you can deploy PHP applications via IIS 7 on your Windows Server 2008 system.
Configuring PHP
In order for Windows to run PHP code, the PHP binary files need to be copied to your system. No installation is required, however some configuration must be done in order for it to properly run. The first step is to download the PHP Windows Binaries and extract them (i.e. ‘C:PHP’). For IIS 7, the non thread safe binaries should be used.
Copy the ‘php.ini-production’ file from the extracted files paste it into the Windows directory. In the Windows directory, rename this file to ‘php.ini’.
Open the ‘php.ini’ file in Notepad and configure it as needed. Out of the box, the production configuration we copied is preconfigured for what the PHP Team feels is good for a production server. There are a few changes you will need to make to configure PHP for your IIS 7 system:
- Uncomment and set the key, cgi.force_redirect = 0
- Uncomment the key, fastcgi.impersonate = 1
- Uncomment and set the key, extension_dir to the ‘ext’ folder in the path PHP was extracted to (i.e. ‘C:PHPext’).
- Set the key, date.timezone to the time zone of your server (the URL on the line above this key lists the accepted values).
At this point, your Windows system can run PHP scripts from the command line using the ‘php.exe’ tool.
Configuring IIS 7 to Run FastCGI
Internet Information Services (IIS) 7 includes the FastCGI framework as part of the installation package. To make sure it is enabled in your IIS 7 installation, check the Role Services under Server Manager > Roles > Web Server.
Make sure the “CGI” option is installed under the “Application Development” section. If it is not, enable this feature and update your IIS 7 installation.
Enable Iis Windows Server 2008 R2
Once IIS is set, install the IIS 7 Administration Pack. If you do not use the “Typical” setup then make sure you have the “FastCGI” option set to install. This package installs the FastCGI configuration interface inside the IIS Manager.
Configuring IIS to Run PHP via FastCGI
Once IIS 7 is setup with all the required features, we just need to configure it to run PHP. First, we configure FastCGI to work with PHP under the “FastCGI Settings” option (this feature is installed as part of the IIS 7 Administration Pack).
In the FastCGI Settings screen, add an application.
Set the path to the ‘php-cgi.exe’ executable located in the folder where you extracted the PHP Windows binaries. Additionally, change the “InstanceMaxRequests” to a value higher than the default (i.e. 5000). Under the “EnvironmentVariables” setting, click the ellipses button to configure additional options.
Add a new variable named “PHP_MAX_REQUESTS” and set the value to the same amount as the “InstanceMaxRequests” setting above.
Apply all settings until you get back to the primary IIS Manager screen.
Next, we have to map how PHP scripts are executed by IIS which is configured in “Handler Mappings”.
In the Handler Mappings, add a new module mapping.
Set the module’s request path to PHP files (*.php) with the module interface “FastCgiModule”. Set the executable to the same file as what was configured in the FastCGI settings above. Assign a friendly name to this mapping, such as PHP, and click Ok.
When you get the confirmation prompt, answer “Yes” to confirm you want PHP to run as a FastCGI application.
Apply all your changes, close and restart IIS to make sure the new settings take effect.
Once this is done, there is a Microsoft hotfix available (a link is available in the links section) which addresses some issues with PHP when running under IIS 7. These should be installed on your web server to ensure PHP functions properly through FastCGI.
Testing PHP
At this point, your server is ready to go, but just to be sure we can confirm your PHP setup through IIS pretty easily. Create a text file in the directory ‘C:Inetpubwwwroot’ named ‘phpinfo.php’ which simply contains the line:
Enable Ftp Iis Windows Server 2008
<?php phpinfo(); ?>
Finally, browse to the address: ‘http://localhost/phpinfo.php’ on your server and you should see the PHP information page. If the page loads successfully, PHP is now up and running on your machine.
Conclusion
Once you have PHP up and running on your Windows system, you can take advantage of the multitude of PHP based applications available as well as develop and deploy your own.
Links
Download PHP Windows Binaries (non thread safe)
Download PHP Hotfix for IIS 7 FastCGI (x86 / x64)
READ NEXT- › A New Wireless Standard: What Is Amazon Sidewalk?
- › How to Use Text Editing Gestures on Your iPhone and iPad
- › Windows 10’s BitLocker Encryption No Longer Trusts Your SSD
- › How to Disable or Enable Tap to Click on a PC’s Touchpad
- › How HTTP/3 and QUIC Will Speed Up Your Web Browsing