win2003服務(wù)器之用Zend和eAccelerator在IIS6下同時(shí)加速
官方主頁(yè): http://eaccelerator.net
在Zend Optimizer的基礎(chǔ)上再運(yùn)行eAccelerator,我的PHP測(cè)試環(huán)境主要是Windows的IIS6+php-5.2.13環(huán)境,我在本機(jī)服務(wù)器和遠(yuǎn)程VMWARE主機(jī)上安裝都輕松配置成功,但是在一臺(tái)遠(yuǎn)程VPS服務(wù)器上安裝,卻怎么都沒(méi)有安裝成功,PHP版本和對(duì)應(yīng)的eAccelerator從PHP5.2.13一直降到PHP5.2.11, PHP5.2.10, PHP5.2.9-2都沒(méi)法用,折騰了半個(gè)晚上原因仍不明朗,目錄夾和權(quán)限設(shè)置肯定都沒(méi)有問(wèn)題,一直降到PHP5.2.8版本和對(duì)應(yīng)的eAccelerator版本才正確運(yùn)行起來(lái),但是步驟基本相同如下:
1、下載和PHP版本對(duì)應(yīng)的eAccelerator文件
2、解壓開(kāi)來(lái),復(fù)制dll文件到php的ext目錄中
3、新建緩存臨時(shí)目錄夾
4、然后追加修改windows中的php.ini文件,如下即可:
[Zend]
zend_extension_ts=”X:\App\php-5.2.13-Win32\ext\eaccelerator.dll”
eaccelerator.shm_size=”32″
eaccelerator.cache_dir=”X:\App\php-5.2.13-Win32\temp”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”"
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″
zend_extension_manager.optimizer_ts=”X:\App\Zend\ZendOptimizer-3.3.0\lib\Optimizer-3.3.0″
zend_extension_ts=”X:\App\Zend\ZendOptimizer-3.3.0\lib\ZendExtensionManager.dll”
zend_optimizer.optimization_level=”512″
####配置選項(xiàng)####
eaccelerator.shm_size
指定 eAccelerator 能夠使用的共享內(nèi)存數(shù)量,單位:MB。
“0″ 代表操作系統(tǒng)默認(rèn)。默認(rèn)值為 “0″。
eaccelerator.cache_dir
用戶磁盤緩存的目錄。eAccelerator 在該目錄中存儲(chǔ)預(yù)編譯代碼、session 數(shù)據(jù)、內(nèi)容等。
相同的數(shù)據(jù)也可以存儲(chǔ)于共享內(nèi)存中(以獲得更快的存取速度)。默認(rèn)值為 “/tmp/eaccelerator”。
eaccelerator.enable
開(kāi)啟或關(guān)閉 eAccelerator?!?″ 為開(kāi)啟,”0″ 為關(guān)閉。默認(rèn)值為 “1″。
eaccelerator.optimizer
開(kāi)啟或關(guān)閉內(nèi)部?jī)?yōu)化器,可以提升代碼執(zhí)行速度?!?″ 為開(kāi)啟,”0″ 為關(guān)閉。默認(rèn)值為 “1″。
eaccelerator.debug
開(kāi)啟或關(guān)閉調(diào)試日志記錄?!?″ 為開(kāi)啟,”0″ 為關(guān)閉。默認(rèn)值為 “0″。
eaccelerator.check_mtime
開(kāi)啟或關(guān)閉 PHP 文件改動(dòng)檢查。”1″ 為開(kāi)啟,”0″ 為關(guān)閉。如果您想要在修改后重新編譯 PHP
程序則需要設(shè)置為 “1″。默認(rèn)值為 “1″。
eaccelerator.filter
判斷哪些 PHP 文件必須緩存。您可以指定緩存和不緩存的文件類型(如 “*.php *.phtml”等)
如果參數(shù)以 “!” 開(kāi)頭,則匹配這些參數(shù)的文件被忽略緩存。默認(rèn)值為 “”,即,所有 PHP 文件
都將被緩存。
eaccelerator.shm_max
當(dāng)使用 ” eaccelerator_put() ” 函數(shù)時(shí)禁止其向共享內(nèi)存中存儲(chǔ)過(guò)大的文件。該參數(shù)指定允許
存儲(chǔ)的最大值,單位:字節(jié) (10240, 10K, 1M)?!?″ 為不限制。默認(rèn)值為 “0″。
eaccelerator.shm_ttl
當(dāng) eAccelerator 獲取新腳本的共享內(nèi)存大小失敗時(shí),它將從共享內(nèi)存中刪除所有在
最后 “shm_ttl” 秒內(nèi)無(wú)法存取的腳本緩存。默認(rèn)值為 “0″,即:不從共享內(nèi)春中刪除
任何緩存文件。
eaccelerator.shm_prune_period
當(dāng) eAccelerator 獲取新腳本的共享內(nèi)存大小失敗時(shí),他將試圖從共享內(nèi)存中刪除早于
“shm_prune_period” 秒的緩存腳本。默認(rèn)值為 “0″,即:不從共享內(nèi)春中刪除
任何緩存文件。
eaccelerator.shm_only
允許或禁止將已編譯腳本緩存在磁盤上。該選項(xiàng)對(duì) session 數(shù)據(jù)和內(nèi)容緩存無(wú)效。默認(rèn)
值為 “0″,即:使用磁盤和共享內(nèi)存進(jìn)行緩存。
eaccelerator.compress
允許或禁止壓縮內(nèi)容緩存。默認(rèn)值為 “1″,即:允許壓縮。
eaccelerator.compress_level
指定內(nèi)容緩存的壓縮等級(jí)。默認(rèn)值為 “9″,為最高等級(jí)。
eaccelerator.name_sapce
一個(gè)所有鍵(keys)的前綴字符串。如果設(shè)置該前綴字符串則允許 .htaccess 或者 主配置
文件在相同主機(jī)上運(yùn)行兩個(gè)相同的鍵名。
eaccelerator.keys
eaccelerator.sessions
eaccelerator.content
判斷哪些鍵(keys)、session 數(shù)據(jù)和內(nèi)容將被緩存。可用參數(shù)值為:
“shm_and_disk” – 同時(shí)在共享內(nèi)存和磁盤中緩存數(shù)據(jù)(默認(rèn)值);
“shm” – 如果共享內(nèi)存用盡或者數(shù)據(jù)容量大于 “eaccelerator.shm_max”
則在共享內(nèi)存或磁盤中緩存數(shù)據(jù);
“shm_only” – 僅在共享內(nèi)存中緩存數(shù)據(jù);
“disk_only” – 僅在磁盤中緩存數(shù)據(jù);
“none” – 禁止緩存數(shù)據(jù)。
eAccelerator 應(yīng)用程序接口(API)
eaccelerator_put($key, $value, $ttl=0)
將 $value 存儲(chǔ)在共享內(nèi)存中,并存儲(chǔ) $tll 秒。
eaccelerator_get($key)
從共享內(nèi)存中返回 eaccelerator_put() 函數(shù)所存儲(chǔ)的緩存數(shù)值,如果不存在或者已經(jīng)
過(guò)期,則返回 null。
eaccelerator_rm($key)
從共享內(nèi)存中刪除 $key。
eaccelerator_gc()
刪除所有過(guò)期的鍵(keys)
eaccelerator_lock($lock)
創(chuàng)建一個(gè)指定名稱的鎖(lock)。該鎖可以通過(guò) eaccelerator_unlock() 函數(shù)解除,在請(qǐng)求
結(jié)束時(shí)也會(huì)自動(dòng)解鎖。例如:
eaccelerator_unlock($lock)
解除指定名稱的鎖(lock)。
eaccelerator_set_session_handlers()
安裝 eAccelerator session 句柄。
從 PHP 4.2.0 以后,您可以通過(guò)設(shè)置 php.ini 中的 “session.save_handler=eaacelerator”
安裝 eAccelerator 句柄。
eaccelerator_cache_output($key, $eval_code, $ttl=0)
在共享內(nèi)存中緩存 $eval_code 的輸出,緩存 $ttl 秒。
可以調(diào)用 mmcach_rm() 函數(shù)刪除相同 $key 的輸出。例如:
eaccelerator_cache_result($key, $eval_code, $ttl=0)
在共享內(nèi)存中緩存 $eval_code 的結(jié)果,緩存 $ttl 秒。
可以調(diào)用 mmcach_rm() 函數(shù)刪除相同 $key 的結(jié)果。例如:
eaccelerator_cache_page($key, $ttl=0)
緩存整個(gè)頁(yè)面,且緩存 $ttl 秒。例如:
eaccelerator_rm_page($key)
從緩存中刪除由 eaccelerator_cache_page() 函數(shù)創(chuàng)建的相同 $key 的頁(yè)。
eaccelerator_encode($filename)
返回 $filename 文件經(jīng)過(guò)編譯后的編碼。
eaccelerator_load($code)
加載被 eaccelerator_encode() 函數(shù)編碼過(guò)的腳本。
5、設(shè)置完畢重啟WEB服務(wù)器即可。
相關(guān)文章
Windows IIS服務(wù)器本地安裝的圖文教程(超詳細(xì))
這篇文章主要為大家詳細(xì)介紹了Windows IIS服務(wù)器本地安裝的相關(guān)教程,文中通過(guò)示例圖片為大家進(jìn)行了全方面講解,有需要的小伙伴可以參考一下2023-09-09Winows Server 2019 激活碼&批量授權(quán)版KMS安裝密鑰GVLK
這篇文章主要介紹了Winows Server 2019 激活碼&批量授權(quán)版KMS安裝密鑰GVLK,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06IIS訪問(wèn)網(wǎng)站的用戶過(guò)多解決方法
本地IIS訪問(wèn)網(wǎng)站的用戶過(guò)多解決方法匯總2010-04-04IIS中User-mode caching引起的Cache-Control不為public問(wèn)題的解決方法
在IIS的Output caching中如果啟用了User-mode caching將引起Cache-Control為no-cache,從而造成頁(yè)面不能被瀏覽器或代理服務(wù)器緩存,下面看解決方法2013-11-11Win2008 R2安裝.NET Framework 4的windows6.1-KB958488-V6001-x64出現(xiàn)
這篇文章主要介紹了Win2008 R2安裝.NET Framework 4的windows6.1-KB958488-V6001-x64出現(xiàn)災(zāi)難性故障解決方法,需要的朋友可以參考下2014-07-07Windows Server 2012 服務(wù)器優(yōu)化圖文方法
這篇文章主要介紹了Windows Server 2012 服務(wù)器優(yōu)化圖文方法,需要的朋友可以參考下2017-08-08在Windows Server 2016中啟用Flash的方法
這篇文章主要介紹了在Windows Server 2016中啟用Flash的方法,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-06-06IIS服務(wù)器同時(shí)設(shè)置多個(gè)網(wǎng)站的三種方式(圖文)
這篇文章主要介紹了IIS服務(wù)器同時(shí)設(shè)置多個(gè)網(wǎng)站的三種方式(圖文),非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-08-08