设为首页 收藏本站
查看: 2198|回复: 0

[经验分享] Windows 2003 IIS下配置MySQL+PHP+ISAPI_Rewrite+Zend+Xcache

[复制链接]
累计签到:7 天
连续签到:1 天
发表于 2015-11-19 09:48:54 | 显示全部楼层 |阅读模式
  此文章首发于牛C网,如需转载,请保留此行...

一.准备工作

windows 2003,自己买吧...

安装IIS 6.0:
安装系统后在"控制面板"->"添加或删除程序"->"添加/删除Windows组件"->双击"应用程序服务器"->然后选中"Internet信息服务(IIS)"->确定->安装完毕...

下载PHP:http://cn2.php.net/get/php-5.2.5-Win32.zip/from/this/mirror

下载MySQL:http://dev.mysql.com/get/Downloads/MySQL-5.0/mysql-5.0.51a-win32.zip/from/pick#mirrors
根据自己的速度,随便点击下面一个国家后面的HTTP/FTP之类的链接进行下载...

下载Zend Optimizer:http://www.zend.com/en/products/guard/downloads
自行选择版本下载,我下的是3.3.3版...

下载Xcache:http://xcache.lighttpd.net/wiki/Release-1.2.2

很多人可能不知道Xcache是什么,下面作个简单介绍:

XCache是一种新的php缓存器,经过本人测试,在Windows下效果比同类软件强很多.

实际测试效果如下(非科学方法):

原网页平均执行时间: 0.13 秒
加速后网页平均执行时间: 0.03秒
原CPU占用率: 15% - 60%
加速后CPU占用率: 3% - 30%


由上数据可以看出,使用这个加速器可以很大程度的降低CPU占用(但会造成更多的内存占用),并使网页执行时间缩短.

由于其他同类软件对Windows的支持不够好,所以选用XCache是Windows主机的不二之选.

已经配置好MySQL + PHP环境,想看XCache的配置,请移步到XCache在Win2003与IIS6下的成功配置方法与疑难解答查看.

下载ISAPI_Rewrite...(压缩包里包含了Bo-Blog 2.1的伪静态配置,如果安装Bo-Blog的话可以直接使用)
下载文件  (已下载 443 次)点击这里下载文件: ISAPI_Rewrite.rar  

也可以到官方进行下载:http://www.isapirewrite.com/download/isapi_rwl_0049.msi

二.配置系统环境

1.安装并配置MySQL
解压MYSQL,然后直接运行...


选择"Custom"自定义安装,


点击"Change"更改 MySQL 安装目录(如果有需要的话),


待文件复制安装完毕后,进行MySQL设置界面,单击"Finish".


选择"Detailed Configuration"进行详细配置,


选择MySQL 运行模式为"Server Machine:


选择MySQL数据库默认存储方式为"Non-Trans Only ( MYISAM)"


设定MySQL最大连接数:一般设置为 128 - 512 之间的整数。


设定MySQL网络参数,注意:不要启用"Strict Mode".


设定MySQL默认字符集,以用户站点语言为准,例如Bo-Blog 2.1版用的是utf8,那么数据库就选utf8,


Windows 环境设定,第一项为作为服务启动的名称,下面的复选框询问是否让该服务自动运行,下面的"Include Bin Directory in Windows PATH"指明是否把MySql的路径插入到系统变量中,一般选上.


修改设定 root 用户密码,注意:不要选上"Create An Anonymous Account",该选项为是否要启动匿名远程连接模式,使用该模式对数据库非常不安全,


完成 MySQL 的安装,并启动 MySQL服务。


2.测试MySQL

打开"开始"菜单->选择"运行"->输入"cmd"->然后在弹出的cmd窗体中输入"MySQL –u root –p"->输入在MySQL配置过程中设定的密码,如果显示如下,MySQL即配置无误...
Welcome to the MySQL monitor.  Commands end with ; or /g.
Your MySQL connection id is 8352
Server version: 5.0.51a-community-nt MySQL Community Edition (GPL)

Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

mysql>  
3.把PHP加入环境变量

解压php,本例是解压到"D:/php"...

右击"我的电脑"->"属性"->选择"高级"标签页->点击"环境变量"->点击下面"系统变量"列表内的"Path"->点击下面的"编辑"->在"变量值"最后处加上";D:/php"(php的解压路径,不要忘记先加上";"号)->确定->点击"编辑"按钮前面的"新建"按钮->在"变量名"后输入"PHPRC"->"变量值"输入"D:/PHP"(PHP的解压路径)->点击"确定"完成...

4.修改php.ini配置文件

进入"D:/php"文件夹,将"php.ini-dist"重命名为php.ini

点击"开始"菜单->选择"运行"->输入"php.ini"->确定->打开php.ini(这样做是为了测试"环境变量"是否设置正确,当然可以直接双击php.ini打开文件...呵呵)

然后搜索"extension_dir"找到extension_dir = "./",并改成extension_dir ="ext"(如果怕配置错误,可以直接点"开始"->"运行"->输入"ext"->确定,如果打开一个全是.dll的文件夹,那证明"环境变量"配置正确)

搜索"Windows Extensions"

在"Windows Extensions"下方的动态模块配置中,需要打开以下模块支持:(去掉模块配置每行前面的";"号即可)
extension=php_mbstring.dll
extension=php_gd2.dll
extension=php_MySQL.dll  
推荐高级用户(对PHP函数很熟悉的)搜索找到"disable_functions =",在其后面增加禁止使用的PHP函数,如"shell_exec","exec","scandir"等...一般用户可以留空...

5.建立网站

点击"开始"->选择"运行"->输入"inetmgr"(或者打开"控制面板"->选择"管理工具"->选择"Internet信息服务(IIS)管理器")启动IIS管理器,展开左边的树目录,右击"网站"->选择"新建"建立一个网站(或虚拟主机),



输入网站名称作为IIS中的标识,可任意输入,


网站IP地址不用填写,端口如没有特殊要求则保持"80"即可,最后"此网站的主机头"下正确输入网站域名,


在硬盘分区中建立目录,并指定,推荐网站放在独立的分区中(本例以"E:/wwwroot/web"为网站存放目录),并确定路径下面的"允许匿名访问网站"被选上.


对于PHP应用,需要给予该站点"读取"和"运行脚本"的权限.


至此,已经成功的新建了一个站点,


6.IIS与PHP整合配置-使站点支持PHP

展开左边的树目录,找到刚刚建立的网站"PHPSite",右击选择"属性",


在站点属性窗口中,单击"主目录"页签,单击"配置"按钮,在新弹出的"应用程序配置"对话框中,单击"添加"按钮,加入PHP的ISAPI支持,选择"可执行文件"为"D:/PHP/php5isapi.dll"(PHP目录下的php5isapi.dll),扩展名为".php"(请不要忘记了前面的一个"."),"限制动作"为"GET,POST",单击"确定"添加,并在"应用程序扩展"窗口中查看".php"扩展是否加载成功.若成功,则单击"确定"关闭配置窗口,回到站点属性主窗口.


单击"文档"页签,在"默认内容文档"中根据网站程序首页名称添加对应的页面名称,一般为"index.php",如有静态化的话,可能包含"index.htm","index.html", 把他们都添加到列表里,完成后,单击"确定",关闭站点属性配置窗口,回到 IIS管理器主界面.


展开管理器左边的树目录,右键单击"Web 服务扩展",选择"添加一个新的 Web 服务扩展",


在如下图所示的"新建WEB服务扩展"对话框中,"扩展名"填写PHP,"文件"选择"D:/PHP/php5isapi.dll",并设置该PHP扩展默认为允许.


重启IIS服务,



到此,IIS与PHP整合完毕...

7.测试PHP是否正常

进入"E:/wwwroot/web"目录,新建一个文本文件,并在其中输入以下代码:
<?php
phpinfo();
?>   
保存,并把文件名改为&quot;info.php&quot;.

如果发现无法更改扩展名,请点击任意一个Windows窗体菜单栏中的&quot;工具&quot;菜单->选择&quot;文件夹选项&quot;->点击&quot;查看&quot;标签页->在&quot;高级设置&quot;中找到&quot;隐藏已知文件类型的扩展名&quot;前面的勾选去掉,点击&quot;确定&quot;关闭,


打开IE浏览器,输入:http://www.youdomain.com/info.php,如果能够正常显示PHP支持信息则表明配置整合是成功的.

8.安装Zend Optimizer优化器

双击下载的ZendOptimizer安装文件,安装过程非常友好,也比较简单,因而此处不再进行截图说明.

但需注意以下几点:

在安装过程中提示php.ini的位置时,请选择PHP的目录,本例为&quot;D:/php&quot;.

安装过程中提示IIS网站根目录的位置,本例为&quot;E:/wwwroot&quot;

ZendOptimizer安装完成后会自动重启IIS服务,重启完成后需要再次打开IE浏览器窗口,查看info.php 支持信息,观察是否包含了ZendOptimizer支持信息,如果没有,则说明Zend Optimizer 没有安装成功,Zend Optimizer支持信息


9.安装Xcache缓存器

解压Xcache,把php_xcache.dll放在php.ini中指定extension_dir中(本例为&quot;D:/php/ext).

下面开始配置,打开php.ini

添加(记得是添加,不要更换原来的zend_extension_ts参数)
zend_extension_ts = &quot;($extension_dir)/php_xcache.dll&quot;

本人配置的时候,把($extension_dir)替换成绝对路径ext(因为建立了环境变量,所以直接使用ext就行,不需要再输入路径)才行的.

添加以下项到php.ini末尾,可以直接复制以下配置...

[xcache.admin]
xcache.admin.enable_auth = Off
xcache.admin.user = &quot;UserName&quot;
xcache.admin.pass = &quot;PassWord&quot;
[xcache]
xcache.shm_scheme = &quot;mmap&quot;
xcache.size = 64M
xcache.count = 4
xcache.slots = 64K
xcache.ttl = 1800
xcache.gc_interval = 1800
xcache.var_size = 8M
xcache.var_count = 4
xcache.var_slots = 64K
xcache.var_ttl = 0
xcache.var_maxttl = 0
xcache.var_gc_interval = 300
xcache.test = Off
xcache.readonly_protection = Off
xcache.mmap_path = &quot;xcache&quot;
xcache.coredump_directory = &quot;&quot;
xcache.cacher = On
xcache.stat = Off
xcache.optimizer = Off
[xcache.coverager]
xcache.coverager = Off
xcache.coveragedump_directory = &quot;&quot;

需要修改的值已经用蓝色标出,说明如下:

xcache.admin.enable_auth  XCache后台是否需要验证(这个后台在刚才下载的XCache的admin目录中,可以自由处理,如不需要请设置成Off)
xcache.admin.user XCache后台登陆用户名
xcache.admin.pass XCache后台登陆密码
xcache.size   XCache的内存缓存大小,普通网站建议设置为64MB,如果是IDC服务器,可以设置成256MB
xcache.count  设置为CPU的数量(双核算2个,比如我的是两个双核Xeon 3.0,就设置为4)
xcache.var_size
xcache.var_count  跟上两条一样
xcache.mmap_path  共享内存标识名,尽量用xcache,避免跟其它软件冲突
xcache.optimizer  优化器,如果没安装Zend可以开启,上面我们已经安装好Zend了,所以设置成Off

至此配置完毕,重新启动IIS即可...

然后再次打开info.php,查找&quot;XCache&quot;,如果找到相关XCache的信息,那代表配置正确...相关信息如下(图中所示的内容会因为参数配置不同而不尽相同):


如果查找不到,请尝试以下疑难解答中的第三点...

至于为什么不用extension,而用zend_extension_ts,因为这个发行版的xcache的接口是ZEND_API,直接用extension无法初始化.

XCache疑难解答

1.phpinfo()中显示没有加载php_xcache.dll
   检查php_xcache.dll的NTFS权限是否正确,需要给网站用户(或者可以用Guests)只读权限.

2.出现php内存错误
   使用了extension调用php_xcache.dll,请尝试使用zend_extension_ts.

3.打开网页没有响应,出现错误 Fatal error: [Zend Optimizer] Zend Optimizer *** is incompatible with XCache 1.2.2
   这是因为安装了Zend导致,解决方法很简单,把调用php_xcache.dll的zend_extension_ts提到调用zend的前面.如:
    zend_extension_manager.optimizer_ts=&quot;D:/Program Files/Zend/ZendOptimizer-3.3.0/lib/Optimizer-3.3.0&quot;
    zend_extension_ts=&quot;C:/php/ext/php_xcache.dll&quot;
    zend_extension_ts=&quot;C:/Program Files/Zend/ZendOptimizer-3.3.0/lib/ZendExtensionManager.dll&quot;


到此,XCache缓存器配置完毕...

10.安装ISAPI_Rewrite URL伪静态模块

想知道URL伪静态的说明及对于SEO的影响,请移步到http://www.niuc.net/post/44/查看...

IIS下的配置方法:打开&quot;Internet信息服务(IIS)管理&quot;->右击&quot;PHPSite&quot;->选择&quot;属性&quot;->点击&quot;ISAPI筛选器&quot;选项卡->点击&quot;添加&quot;添加筛选器->名称填个rewrite->路径自己指定&quot;ISAPI_Rewrite.dll&quot;(在ISAPI_Rewrite的根目录下)->点击&quot;确定&quot;.

然后配置ISAPI_Rewrite,打开ISAPI_Rewrite目录,打开&quot;httpd.ini&quot;,在里面放入对应你网站程序的配置(本站下载的ISAPI_Rewrite里包含了Bo-Blog2.1的配置文件,可直接使用),配置自己根据网站程序在baidu或者google上搜吧...如果是自己写网站程序,请自行写配置文件...

重启IIS(重启方法上面已经给出),配置完毕...然后到对应的网站程序里打开对应的选项...

到此为止...所有的配置已经成功完成,如果有任何疑问或者意见,请留言...谢谢观看...希望对你有帮助...

PS.以上流程部分来自Discuz的用户手册...

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-141039-1-1.html 上篇帖子: 网站加速---Xcache安装 下篇帖子: XCache安装配置
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表