欢迎来到天天文库
浏览记录
ID:8818477
大小:31.50 KB
页数:3页
时间:2018-04-08
《php在apache中两种工作方式的区别》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、PHP在Apache中两种工作方式的区别.txt不怕偷儿带工具,就怕偷儿懂科技!1品味生活,完善人性。存在就是机会,思考才能提高。人需要不断打碎自己,更应该重新组装自己。本文由yhm1100贡献doc文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。PHP在Apache中两种工作方式的区别中两种工作方式的区别(CGI模式、Apache模块DLL)模式、Windows下有两种方法PHP工作方法使工作于Apache2.0.x之中。一种是使用CGI可执行程序,另一种是适用Apache模块的DLL。方法这两种工作方式的安装:这两种工作方式的安装:安装P
2、HP在Apache2.0中的CGI方式ScriptAlias/php/"c:/php/"AddTypeapplication/x-httpd-php.php#对PHP4用这行Actionapplication/x-httpd-php"/php/php.exe"#对PHP5用这行Actionapplication/x-httpd-php"/php/php-cgi.exe"PHP在Apache2.0中的模块方式#对PHP4用这两行:LoadModulephp4_module"c:/php/php4apache2.dll"#别忘了从sapi目录中把php4apache2.dll
3、拷贝出来!AddTypeapplication/x-httpd-php.php#对PHP5用这两行:LoadModulephp5_module"c:/php/php5apache2.dll"AddTypeapplication/x-httpd-php.php#配置php.ini的路径PHPIniDir"C:/php"这两种工作方式的区别:这两种工作方式的区别:在CGI模式下,如果客户机请求一个php文件,Web服务器就调用php.exe去解释这个文件,然后再把解释的结果以网页的形式返回给客户机;而在模块化(DLL)中,PHP是与Web服务器一起启动并运行的。所以从某种角度
4、上来说,以apache模块方式安装的PHP4有着比CGI模式更好的安全性以及更好的执行效率和速度。一、FastCGI是什么?FastCGI是语言无关的、可伸缩架构的CGI开放扩展,其主要行为是将CGI解释器进程保持在内存中并因此获得较高的性能。众所周知,CGI解释器的反复加载是CGI性能低下的主要原因,如果CGI解释器保持在内存中并接受FastCGI进程管理器调度,则可以提供良好的性能、伸缩性、Fail-Over特性等等。FastCGI的官方站点在http://www.fastcgi.comFastCGI的工作原理是:1、WebServer启动时载入FastCGI进程管理
5、器(IISISAPI或ApacheModule);2、FastCGI进程管理器自身初始化,启动多个CGI解释器进程(在任务管理器中可见多个php-cgi.exe)并等待来自WebServer的连接。3、当客户端请求到达WebServer时,FastCGI进程管理器选择并连接到一个CGI解释器。Webserver将CGI环境变量和标准输入发送到FastCGI子进程php-cgi.exe。4、FastCGI子进程完成处理后将标准输出和错误信息从同一连接返回WebServer。当FastCGI子进程关闭连接时,请求便告处理完成。FastCGI子进程接着等待并处理来自FastCG
6、I进程管理器(运行在WebServer中)的下一个连接。在正常的CGI模式中,php-cgi.exe在此便退出了。在上述情况中,你可以想象CGI通常有多慢。每一个Web请求PHP都必须重新解析php.ini、重新载入全部dll扩展并重初始化全部数据结构。使用FastCGI,所有这些都只在进程启动时发生一次。一个额外的好处是,持续数据库连接(Persistentdatabaseconnection)可以工作。二、为什么要使用FastCGI,而不是多线程CGI解释器?这可能出于多方面的考虑,例如:1、你无论如何也不能在windows平台上稳定的使用多线程CGI解释器,无论是I
7、ISISAPI方式还是APACHEModule方式,它们总是运行一段时间就崩溃了。奇怪么?但是确实存在这样的情况!当然,也有很多时候你能够稳定的使用多线程CGI解释器,但是,你有可能发现网页有时候会出现错误,无论如何也找不到原因,而换用FastCGI方式时这种错误的概率会大大的降低。我也不清楚这是为什么,我想独立地址空间的CGI解释器可能终究比共享地址空间的形式来得稳定一点点。2、性能!性能?可能么,难道FastCGI比多线程CGI解释器更快?但有时候确实是这样,只有测试一下你的网站,才能最后下结论。原因嘛,我觉得很难讲,但有
此文档下载收益归作者所有