• IIS配置PHP环境(快速最新版)


    我们知道php配置有几种:

    1、CGI方式加载PHP环境,通常就是IIS里面配置解释器为php.exe,早期比较常见,目前使用较少。
    特点是:稳定,但效率太低。

    2、ISAPI方式加载PHP环境,通常就是IIS里面配置解释器为php5isapi.dll,目前使用最多,应用最广。
    特点是:多线程,效率较高,但不够稳定。

    3、FastCGI方式加载PHP环境,在IIS环境里并不常见,但其它系统环境应用还是有的,不过IIS7.0开始内置FastCGI了。
    特点是:高效率,高稳定性,属于将来发展趋势。

    我试过其他的特别麻烦,PHP 5.3发布的Windows版已经不支持ISAPI模式了,所以我打算按微软推荐的FastCGI方式运行PHP。

    我用的就第三种,也是最好最快的,因为FastCGI大大加强了IIS处理PHP的能力,能迅速提高PHP站点的反应速度和生产力,

    并具有更高的稳定性和安全性.

         下载地址:http://windows.php.net/download/里面有好多种,要那种呢?

    PHP现在推出5.3.2版本了,不过下载的时候有几个不同版本选择。那就是VC6 X86和VC9 X86。
    首先我来解答:
    VC6是什么?
    VC6就是legacy Visual Studio 6 compiler,就是使用这个编译器编译的。
    VC9是什么?
    VC9就是the Visual Studio 2008 compiler,就是用微软的VS编辑器编译的。

    那我们如何选择下载哪个版本的PHP呢?
    如果你是在windows下使用Apache+PHP的,请选择VC6版本;
    如果你是在windows下使用IIS+PHP的,请选择VC9版本;

    那Non Thread Safe是什么?
    Non Thread Safe就是非线程安全;
    Thread Safe 是什么?
    Non Thread Safe 是线程安全;

    FastCGI执行方式是以单一线程来执行操作,所以不需要进行线程的安全检查,除去线程安全检查的防护反而可以提高执行效率,所以,如果是以 FastCGI(无论搭配 IIS 6 或 IIS 7)执行 PHP ,都建议下载、执行 non-thread safe 的 PHP (PHP 的二進位檔有兩種包裝方式:msi 、zip ,請下載 zip 套件)所以我们选择NO-Thread Safe 版本的PHP来使用
    而线程安全检查正是为ISAPI方式的PHP准备的,因为有许多php模块都不是线程安全的,所以需要使用Thread Safe的PHP。

    下载安装,我安装默认路径了:

    曾祥展

    记得选中第三项:IIS FASTCGI

    曾祥展

    如果没有安装IIS FASTCGI的 下一步会提示没有安装的,下载安装就行了

    FastCGI  for IIS 6  7   http://www.iis.net/expand/fastcgi

    曾祥展

    2-1

    安装好后,继续下一步,我按照默认了:

    曾祥展

    安装完毕后,就是配置了。

    这种配置有两种方法,我用cmd配置,一条命令就行了。

    转到刚才安装CGI的目录下: 

    >cd C:\WINDOWS\system32\inetsrv

    >cscript fcgiconfig.js -add -section:"PHP" -extension:php -path:"C:\Program Files\PHP\php-cgi.exe"

    注意:path:"xxxx\php-cgi.exe” 是你安装php的目录

    > cscript fcgiconfig.js -set -section:"PHP" -InstanceMaxRequests:10000
    > cscript fcgiconfig.js -set -section:"PHP" -EnvironmentVars:PHP_FCGI_MAX_REQUESTS:10000

    曾祥展

    ok!完毕!

    测试下:

    新建一个.php文件,里面

    <?php

    phpinfo();

    ?>

    保存!

    运行,出现下面页面,说明配置成功了!

    曾祥展

    这样的方法 IIS就不用怎么配置,他都会自动配置好了!微软提供的配置更加详细

    如果按上面的教程配置好后,运行php测试页面,出现了500错误。

    那就设置php.ini中的date.timezone项。

    我这里设置成上海时区:date.timezone = Asia/beijing

    设置完后就一切正常了!

  • 相关阅读:
    Heroku
    windows平台
    ORTP编译为静态库的问题
    关于Visual Studio 2013 编译 multi-byte character set MFC程序出现 MSB8031 错误的解决办法
    Windows API 磁盘
    Unity项目苹果提审Mach-O文件大于80M问题解决方法
    Unity加载prefab时调用脚本函数顺序和内存释放问题
    Unity3d中多足怪的物理RagDoll实现
    手游各个系统及UI架构剖析
    手游客户端数据表接入随笔
  • 原文地址:https://www.cnblogs.com/94YY/p/2271639.html
Copyright © 2020-2023  润新知