PHP在II7安装指南

参考文档:

Using FastCGI to Host PHP Applications on IIS 7.0

一、PHP的安装

1、下载并安装程序

PHP 5.2.8 Non-thread-safe zip package

the update for FastCGI module

Administration Pack for IIS 7.0

Win2008下的IIS7与PHP相关问题

2、配置php.ini

把C:\PHP\php.ini-recommended 复制成php.ini,然后修改文件:

fastcgi.impersonate = 1
cgi.fix_pathinfo=1
cgi.force_redirect = 0
open_basedir ="G:\Projects_PHP"   
extension_dir = "c:\php\ext" ;extension_dir = "./"
extension=php_mssql.dll
extension=php_mysql.dll

extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mcrypt.dll
extension=php_pdo.dll
extension=php_pdo_mysql.dll
extension=php_pdo_mysql.dll

 其中open_basedir表示网站所在的包含目录,你也可以指定为"G:\",这样只要在G盘下的网站都可以在安全范围之内

#为了使用session需要添加设置 session.save_path = "c:\php\tmp" 并创建目录tmp

#extension_dir = "c:\php\ext"

3、配置IIS

IIS根-->Handler Mappings-->

    Request path: *.php
    Module: FastCgiModule
    Executable: "C:\PHP\php-cgi.exe"
    Name: PHP via FastCGI

IIS根-->FastCGI settings-->Edit... --> Edit FastCGI application-->instanceMaxRequest=10000

                                                  --> EnvironmentVariables --> PHP_FCGI_MAX_REQUESTS=10000

4、推荐的安全配置(仅供参考)

    allow_url_fopen=Off
    allow_url_include=Off
    register_globals=Off
    open_basedir="c:"inetpub""
    safe_mode=Off
    safe_mode_gid=Off
    max_execution_time=30
    max_input_time=60
    memory_limit=16M
    upload_max_filesize=2M
    post_max_size=8M
    max_input_nesting_levels=64
    display_errors=Off
    log_errors=On
    error_log="C:"path"of"your"choice"
    fastcgi.logging=0
    expose_php=Off

5、独立配置

参考:http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis-70/

中的"Per-site PHP process pools"和"Specifying php.ini location"

A、IIS根-->FastCGI Settings-->Add Appliction....-->fullPath="C:\PHP\php-cgi.exe"

                                                                           arguments="-d open_basedir=G:\Projects_PHP\Samples\PHP_Hello2"

查看:C:\windows\system32\inetsrv\config\applicationHost.config可见有如下配置:

< fastCgi >
 
< application  fullPath ="C:\PHP\php-cgi.exe"  instanceMaxRequests ="10000" >
 
< environmentVariables >
   
< environmentVariable  name ="PHP_FCGI_MAX_REQUESTS"  value ="10000"   />
  
</ environmentVariables >
 
</ application >
 
< application  fullPath ="C:\PHP\php-cgi.exe"
arguments
="-d open_basedir=G:\Projects_PHP\Samples\PHP_Hello2"  maxInstances ="4"  idleTimeout ="300"  activityTimeout ="30"  requestTimeout ="90"

instanceMaxRequests="200" protocol="NamedPipe" queueLength="1000" flushNamedPipe="false"
rapidFailsPerMinute
="10" />

</fastCgi>

 

B、修改网站的web.config

<? xml version="1.0" ?>
< configuration >
< system.webServer >
    
< handlers  accessPolicy ="Read, Script" >  
        
< remove  name ="PHP via FastCGI"   />
        
< add  name ="PHP via FastCGI"  path ="*.php"  verb ="*"  modules ="FastCgiModule"  scriptProcessor ="C:\PHP\php-cgi.exe|-d open_basedir=G:\Projects_PHP\Samples\PHP_Hello2"  resourceType ="Unspecified"  requireAccess ="Script"   />
    
</ handlers >
</ system.webServer >
</ configuration >

 

6、配置环境变量

例如安装目录在c:\php

配置Path的变量添加C:\PHP\;

7、安装URL Rewrite Module

下载rewrite_x86_rtw.msi 

参考:URL Rewrite Module Using URL Rewrite Module URL Rewrite Module Configuration Reference 

 

你可能感兴趣的:(PHP)