前提:Windows 2008 r2系统及网络已经配置好。
一、安装IIS 7
1. 打开服务器管理器,添加角色,服务角色选择web服务器(IIS),角色服务在默认的基础上选择CGI和动态内容压缩两项;
2. 安装完成,打开浏览器测试http://localhost/,显示IIS7欢迎页面表示IIS7安装成功。
二、安装PHPManagerForIIS
1. 下载地址:http://phpmanager.codeplex.com/releases/view/69115;
2. 有X86、X64两个版本,根据系统是32位还是64位来决定选择使用哪个版本;
3. 安装非常简单,安装完成重新打开IIS管理器可以看PHP manager扩展。
有了PHP manager扩展,IIS配置php变得非常简单。
三、安装PHP
1. 下载地址: http://windows.php.net/download;
2. IIS6默认只支持ISAPI一种接入方式,而IIS7同时支持CGI、ISAPI两种接入方式。
ISAPI接入方式应选择Thread Safe版本,CGI接入方式则选择Non Thread Safe。
各个PHP版本分别用VC9 X86,VC11 X86,VC11 X64编译,因此需要相对应的引入VC9 X86,VC11 X86,VC11 X64包才能运行。
32位系统只能选择VC X86类版本,64位系统VC X86、VC X64两类版本都可以。
注意:要运行PHP一定要先安装相应的VC包。
下载地址:VC9 X86:http://www.microsoft.com/zh-CN/download/details.aspx?id=5582 ,VC11 X86、VC11 X64:http://www.microsoft.com/zh-CN/download/details.aspx?id=30679。
3. 使用IIS7推荐用CGI方式接入,php_wincache只支持X86的php5.2、5.3、5.4、5.5,再结合php_memcache只为windows
提供PHP.3、5.4、5.5、5.6,我们可选择的版本有PHP5.3、5.4、5.5 X86 Non Thread Safe三个版本。
在测试中我发现php5.5中wincache无法启用,这是为什么呢?最终我选择php5.4 X86 Non Thread Safe。 后记:关于php5.5中wincache无法启用:php5.5及php5.6 wincache无法启用问题
4. 将下载的php5.4文件解压,再通过php manager绑定php-cgi.ex即完成php5.4的安装。
四、安装php_wincache php_memcache
1. 下载php_wincache,下载地址:http://www.iis.net/downloads/microsoft/wincache-extension,下面底部选择php5.4下载解压到php5.4下ext目录中。
2. 下载php_memcache,下载地址:http://pecl.php.net/package/memcache/3.0.8/windows,选择下载5.4 Non Thread Safe (NTS) x86,下载解压到php5.4下ext目录中。
3. 打开IIS管理器 php manager,启用php_wincache,php_memcache,打开<?php phpinfo(); ?>测试查找wincache,memecache,能搜索到表示配置成功。
至此,我们的windows 2008 R2系统安装iis+php5.4+wincache+memcahce环境就已经搭建完成。
后记:这个环境在后期运行当中,会出现fastcgi错误,引起w3wp崩溃,详情请关注 windows 2008 R2 wincache 不稳定
五、安装Memcache Server
1. 从我的云盘iis7目录下载memcached-win64.zip,然后解压到服务器C:windowssystem32目录中;
2. 在CMD下输入 "memcached -d install" 安装;
3. 再输入:"net start memcached" 启动;注意: 以后memcached将作为windows的一个服务每次开机时自动启动。无需手动启动。
4. 输入netstat -an 查看11211是否开启监听。
5. 编辑注册表HKEY_LOCAL_MACHINESYSTEMCurrentControlSetservicesmemcached,在ImagePath原来值基础加上 -m 2048 -c 6000。(2G内存 最大同时连接6000)
直接运行也可以,可以加上参数来加以设置。
常用设置:
-p <num> 监听的端口
-l <ip_addr> 连接的IP地址, 默认是本机
-d start 启动memcached服务
-d restart 重起memcached服务
-d stop|shutdown 关闭正在运行的memcached服务
-d install 安装memcached服务
-d uninstall 卸载memcached服务
-u <username> 以<username>的身份运行 (仅在以root运行的时候有效)
-m <num> 最大内存使用,单位MB。默认64MB
-M 内存耗尽时返回错误,而不是删除项
-c <num> 最大同时连接数,默认是1024
-f <factor> 块大小增长因子,默认是1.25
-n <bytes> 最小分配空间,key+value+flags默认是48
-h 显示帮助
关于Enable32BitAppOnWin64 https://msdn.microsoft.com/zh-tw/windows/gg537085.aspx