码迷,mamicode.com
首页 > Web开发 > 详细

IIS 配置 PHP 环境搭建:web 文件管理器

时间:2015-06-26 23:55:04      阅读:322      评论:0      收藏:0      [点我收藏+]

标签:文件管理器   windows   下载地址   解释器   反应速度   

一、基础知识

我们知道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 7.5

 打开【服务器管理器】-【角色】-【添加角色】, 选择【Web服务器(IIS)】

技术分享

选择角色服务,注意一定勾选【CGI】,如果你的程序在IIS7下出错,记得选择服务的时候添加IIS6兼容模块,如果无问题,这个可以不用选择;

技术分享

技术分享

测试是否成功安装IIS v7.0/v7.5,在浏览器输入:http://localhost/  或者 http://127.0.0.1/

技术分享


二、安装 PHP

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

技术分享

记得选中第三项:IIS FASTCGI

技术分享

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

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

技术分享

技术分享

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

技术分享

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

这种配置有两种方法,我用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

技术分享

==================================================

zip 格式,php 安装。

直接解压在 C:\php 目录即可。


PHP配置

3. 配置PHP
①把下载好的ZIP文件解压到一个文件夹,比如C:\PHP,下文称之为PHP目录。
②把PHP目录下的php.ini-development改名为php.ini,并打开它。
③打开扩展目录配置extension_dir,即把 extension_dir = "ext"前的分去掉。
④打开扩展配置,我觉得php_mbstring是必须的,其它的可以自选。
⑤修改时区。date.timezone = "Asia/Shanghai"
⑥修改mbstring配置,这个根据自己的情况改,如果只是测试用的话,不改也没关系。
⑦修改好后可以运行CMD,进入PHP目录,执行php –version,如果配置不对的话,就会有警告。


修改F:\WebLAMP\php5\php.ini-development文件名为php.ini。

配置php.ini 文件,搜索如下配置并修改相应的配置值:使之支持mysql等extension_dir = "php安装目录\ext"   
log_errors = On

error_log = "C:/inetpub/temp/php-errors.log"

fastcgi.impersonate = 1    
fastcgi.logging = 0     
cgi.fix_pathinfo=1     
cgi.force_redirect = 0

session.save_path = "C:/inetpub/temp/phpsessions/"(可选)

以上3个前的;去掉,并修改以上相应数值,如下图所示:

技术分享

去除以下扩展前的引号:

extension=php_curl.dll    
extension=php_gd2.dll     
extension=php_mbstring.dll     
extension=php_mysql.dll     
extension=php_pdo_mysql.dll     
extension=php_pdo_odbc.dll     
extension=php_xmlrpc.dll     
extension=php_xsl.dll     
extension=php_zip.dll

输入http://127.0.0.1/http://localhost/校验是否成功安装php:

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

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

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


三、整合 IIS 与 PHP

IIS 7 , 7.5 默认支持 FastCGI 方式运行 php

 配置IIS和PHP的转接
①“控制面板”里点击“系统和安全”,在新的画面里点击右边下部的“管理工具”,在新窗口里点击“Internet信息服务(IIS)管理器”。
②在新打开的“Internet信息服务(IIS)管理器”中,双击“处理程序映射”,在新出现的画面的右上角点击“添加模块映射”。
③在添加模块映射画面,内容如下。请求路役:*.php;模块:FastCgiModule;可执行文件:选择PHP目录的php-cgi.exe,如C:\PHP\php-cgi.exe;名称:PHP(这个可以自己随便)。请求限制可加可不加,加的话,一般把谓词设为GET,HEAD,POST。
④确定,然后可以自己写一个PHP测试文件测试一下。代码<?PHP phpinfo(); ?>


第一步:配置IIS 7 ,打开 Internet信息服务器(IIS)管理器, 在 IIS 添加一个处理程序映射

技术分享

第二步:添加 【模块映射】

请求路径:*.php
模块:
FastCgiModule
可执行文件:php安装目录\php-cgi.exe

名称:PHP via FastCGI

技术分享

技术分享

注意:要把php目录下的pws-php5cgi.reg文件注册运行下


第三步:配置 FastCGI

注意,这里如果是IIS7,则需要手动安装Administration Pack for IIS 7.0 ,如果是IIS7.5,则无需下载,IIS7.5已经集成此功能。

技术分享


技术分享

添加:PHP_FCGI_MAX_REQUESTS , value 数值10000;

技术分享


第四步: 配置默认文档

添加默认文档index.php:

技术分享

IIS 日志:  

http://www.cnblogs.com/fish-li/p/3139366.html


四、测试 IIS 与 PHP

ok!完毕!

测试下:

新建一个.php文件,里面

<?php

phpinfo();

?>

保存!

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

技术分享

技术分享

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

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

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

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

设置完后就一切正常了!


技术分享

windows 2008 R2: 

    原来出现这个错误是因为PHP5.3是Visual C++ 2008 compiler (VC9)编译的,所以需要在服务器上安装Visual C++ 2008 runtime,至此,整个问题解决。


技术分享


核实 php.ini 中的这几项
    cgi.force_redirect=0
    fastcgi.impersonate=1
    fastcgi.logging=0


五、配置 KODExplorer

web explorer: http://www.freehao123.com/web-ftp/

什么是 KODExplorer:   http://kalcaddle.com/index.html

KodExplorer是一款开源的基于Web的在线文件管理、代码编辑器。它提供了类windows经典用户界面,一整套在线文件管理、文件预览、编辑、上传下载、在线解压缩、音乐播放功能。让你直接在浏览器端实现web开发、源码文件预览、网站部署。同时拥有与本地操作一样方便、快捷、安全的体验。 商业版授权请联系:kalcaddle#qq.com

下载KODExplorer: http://kalcaddle.com/download.html


1.下载,解压

下载KODExplorer, 然后解压到 D:\ 根目录, 比如:D:\kodexplorer3.12。

2.在 IIS 中发布

【开始】-【管理工具】-【Internet 信息服务(IIS)管理器】 - 【右键  网站】 -【添加网站】

技术分享

通过web 浏览器访问: http://localhost/

技术分享


技术分享

3.使用说明

管理员:  admin/admin
普通用户:demo/demo
游客用户:guest/guest

[如何使用] 下载程序,解压上传到你的服务器路径下,data目录设置777权限。访问体验超便捷的服务吧!
(为确保数据安全,最好配置服务器不允许列目录)
[关于上传问题] 程序没有做任何限制,如果需要上传大文件,则修改
  php.ini:`upload_max_filesize = 1000M post_max_size = 1000M`  [详情:http://955.cc/R2yT]
  注意不能大于2g,可能否则导致php无法正常运行(不支持post)。
[关于解压缩问题] 程序不做任何限制,如若失败请设置php内存限制。memory_limit  1000M
[关于解压缩乱码] linux服务器压缩,下载到windows下中文会乱码。是由于系统导致的。所以尽量不要跨系统操作。
[关于"系统错误"] 请配置php错误提示级别error_reporting; 配置php.ini或者允许error_reporting函数
[关于兼容性] 建议使用chrome firefox ie9+  体验更完整。ie8以下基本上不做兼容处理。chrome支持文件夹拖拽上传。
[文件打开] office文件在线预览功能,服务器必须在公网(外部能访问该服务器);
    内部或局域网需要使用请参考qq群共享“web office搭建”,然后配置kod程序config/config.php OFFICE_SERVER
[安全提示] 为确保数据安全,请设置http服务器不允许列目录。[详情:http://955.cc/R2vw]
[忘记密码] 修改data/system/member.php 密码为明文的md5值 例如将admin密码重设为admin
    则修改第一行:"name":"admin","password":"21232f297a57a5a743894a0e4a801fc3"

【文件拖拽上传】除了ie8以下的大部分浏览器支持;建议使用chrome、360、猎豹、uc等
【文件夹拖拽上传】除了ie10以下、firefox大部分浏览器都支持,建议使用chrome、360、猎豹、uc等



未完待续。。。






本文出自 “Share your knowledge” 博客,请务必保留此出处http://skypegnu1.blog.51cto.com/8991766/1666067

IIS 配置 PHP 环境搭建:web 文件管理器

标签:文件管理器   windows   下载地址   解释器   反应速度   

原文地址:http://skypegnu1.blog.51cto.com/8991766/1666067

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!