Home >Backend Development >PHP Tutorial >The safest and most reliable way to configure PHP in IIS6_PHP tutorial
Although the LAMP combination is very good, if you want to set up a server that supports PHP, ASP, ASP.NET, JSP, and Perl at the same time As a Web virtual host server, it is best to use IIS 6 of Windows 2003. There are many articles on the Internet about configuring PHP on IIS 6, but those methods either have poor performance or are troublesome to upgrade. The following method allows you to upgrade very conveniently after the first configuration.
The upgrade mentioned here refers to upgrading from a certain php4 version to another php4 version, or from a certain php5 version to another php5 version, not from php4 to php5.
Preparation:
1. An installed Windows 2003 server, and IIS 6 has been installed.
2. Download the Windows version of PHP binary compressed package
Installation:
Extract the PHP binary compressed package to the C: php directory (assuming here that the C: drive is the system disk, that is, the disk where the Windows system is installed. If the system disk is the D: drive, decompress it to the D: php directory , and so on, the same below).
Then open "My Computer"->"Properties"->"Advanced"->"Environment Variables"->"System Variables"->"path", edit its value and add it in front The following path address:
C:php;C:phpdlls;C:phpextensions;C:phpsapi;
Copy php.ini-dist or php.ini-recommended to the C:Windows directory and rename it to php.ini. Generally, the server for officially publishing the website uses php.ini-dist, and the server for debugging is used php.ini-recommended is better. Of course, under normal circumstances, this php.ini still needs to be modified according to the actual situation.
Here are some necessary modification options:
extension_dir = "C:phpextensions"
This is the directory where the PHP extension is placed. Please make sure it is the same as the directory where you actually installed it.
extension=php_mbstring.dll
;extension=php_big_int.dll
extension=php_bz2.dll
extension=php_cpdf.dll
extension=php_crack.dll
extension=php_curl.dll
extension=php_db.dll
extension=php_dba.dll
extension=php_dbase.dll
extension=php_dbx.dll
extension=php_domxml.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_filepro.dll
extension=php_gd2.dll
extension=php_gettext.dll
extension=php_hyperwave.dll
extension=php_iconv.dll
;extension=php_ifx.dll
;extension=php_iisfunc.dll
extension=php_imap.dll
;extension=php_interbase.dll
extension=php_java.dll
extension=php_ldap.dll
;extension=php_mcrypt.dll
extension=php_mhash.dll
extension=php_mime_magic.dll
extension=php_ming.dll
extension=php_mssql.dll
extension=php_msql.dll
;extension=php_oci8.dll
extension=php_openssl.dll
;extension=php_oracle.dll
extension=php_pdf.dll
extension=php_pgsql.dll
;extension=php_printer.dll
extension=php_shmop.dll
;extension=php_snmp.dll
extension=php_sockets.dll
;extension=php_sybase_ct.dll
extension=php_w32api.dll
extension=php_xmlrpc.dll
extension=php_xslt.dll
extension=php_yaz.dll
extension=php_zip.dll
Of the above, those without a semicolon at the beginning are open extensions, and those with a semicolon are unopened extensions. The above settings include all extensions that can be turned on by default on Windows 2003 (the ones listed here are for PHP 4).
session.save_path = c:sessions
This is the directory where session files are saved by default. This directory must be an existing directory, otherwise the default session function will be invalid. What I set here is a directory on a ramdisk. Setting session.save_path on the ramdisk can speed up session processing. If you have not installed ramdisk, you can assign it to any directory on other disks, such as the C:sessions directory, C:WindowsTemp directory, etc.
OK, the basic work is done, now it’s time to configure IIS.
Open "Internet Information Services (IIS) Manager", in "Web Service Extension", select "Add a new Web Service Extension", the extension name can be filled in "PHP ISAPI Extension", the required file selection: C :phpsapiphp4isapi.dll (if PHP5 is installed, this is C:phpsapiphp5isapi.dll, the same below), and set the extension status to allowed.
Open "Website"->"Properties"->"ISAPI Filter"->"Add", fill in "PHP" as the filter name, and still select C:phpsapiphp4isapi.dll for the executable file.
Open "Website"->"Properties"->"Home Directory"->"Application Settings"->"Configuration"->"Application Extension"->"Add", you can To execute the file, choose C:phpsapiphp4isapi.dll. Fill in the extension ".php", and the action is limited to "HEAD, GET, POST".
Open "Website"->"Properties"->"Document"->"Enable default content document"->"Add" to add index.php as the default content document.
Then select "Server Machine Name"->"All Tasks"->"Restart IIS" to restart IIS.
Test
Create a test page in the default website publishing directory:
phptest.php
phpinfo();
?>
If you can see the PHP installation configuration information when you open this page, the installation is successful.
If you want to execute PHP programs more optimally, you can install ZendOptimizer-2.6.0-Windows-i386.exe. The installation of this thing is very simple and will not be introduced here.
Upgrade
Upgrading is now very simple. You only need to download the new version of the PHP binary compressed package, delete the original C:php directory, unzip the new version into the C:php directory, and then restart IIS. There is no need to modify any configuration or copy any files to the System32 directory.