這個主要描述下一些常用外掛程式和工具的安裝和配置。
1.eAccelerator
eAccelerator是一個自由開放源碼php加速器,最佳化和動態內容緩衝,
提高了php指令碼的緩衝效能,使得PHP指令碼在編譯的狀態下,
對伺服器的開銷幾乎完全消除。 它還有對指令碼起最佳化作用,
以加快其執行效率。使您的PHP程式碼執效率能提高1-10倍;
1.安裝eAccelerator
如果只有一個php安裝,那麼可以直接在eAccelerator目錄下執行
phpize
./configure
make
當你有多個php安裝或者phpize不再你的當前路徑中的時候,那麼
[gaohu@tigertall ~]$ tar -jxf eaccelerator-0.9.6.1.tar.bz2
[gaohu@tigertall ~]$ cd eaccelerator-0.9.6.1
[gaohu@tigertall ~]$ su -
[root@tigertall ~]# cd /home/gaohu/eaccelerator-0.9.6.1
[root@tigertall eaccelerator-0.9.6.1]# /usr/local/bin/phpize
Configuring for:
PHP Api Version: 20090626
Zend Module Api No: 20090626
Zend Extension Api No: 220090626
/usr/local/bin/phpize命令一定要放在eaccelerator目錄下執行,
不然會報 Cannot find config.m4 的錯誤。
[root@tigertall eaccelerator-0.9.6.1]# ./configure \
--enable-eaccelerator=shared \
--with-php-config=/usr/local/bin/php-config
[root@tigertall eaccelerator-0.9.6.1]# make
[root@tigertall eaccelerator-0.9.6.1]# make install
得到如下的輸出,安裝就成功了
Installing shared extensions:
/usr/local/lib/php/extensions/no-debug-zts-20090626/
如果php編譯的是非安全執行緒的,那麼可能會輸出在
/usr/local/lib/php/extensions/no-debug-non-zts-20090626/
自己要注意下。
2.配置eAccelerator
eAccelerator可以被配置為Zend擴充,或者是php的擴充。當被配置為Zend擴充時,
需要使用完整目錄來指示eaccelerator.so連結庫的路徑。
如果存在php.d目錄,則把eAccelerator.ini拷貝進去,並進行設定。
否則的話,則編輯php.ini檔案。
安裝為zend擴充:
zend_extension="/usr/lib/php4/eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir=" /var/cache/eaccelerator"
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"
eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"
如果你使用了安全執行緒的php構建,那麼需要使用
"zend_extension_ts" 來替換上面的 "zend_extension".
安裝為php擴充:
extension="eaccelerator.so"
eaccelerator.shm_size="16"
eaccelerator.cache_dir="/var/cache/eaccelerator"
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"
eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"
把以上內容粘貼到php.ini檔案中即可。
上述變數的意思:
eaccelerator.shm_size="16"
解釋:eaccelerator可使用的共用記憶體大小(單位為MB)。
eaccelerator.cache_dir="/tmp/eaccelerator"
解釋:緩衝路徑
eaccelerator.enable="1"
解釋:開啟或者關閉eaccelerator。"1"指開啟,"0"指關閉。預設值為"1"。
eaccelerator.optimizer="1"
解釋:開啟或者關閉代碼最佳化,開啟可以加快代碼的執行速度。
"1"指開啟,"0"指關閉。預設值為"1"。
eaccelerator.check_mtime="1"
解釋:當開啟此項時,eaccelerator會在每次請求時檢查php檔案的修改時間,
看其是否被修改過,這會耗費一點時間,如果php檔案被修改過,
eaccelerator會重新編譯緩衝該php檔案。當關閉此項時,如果php檔案被修改,
則需要手工刪eaccelerator緩衝,才能顯示被修改的php檔案。
"1"指開啟,"0"指關閉。預設值為"1"。
eaccelerator.debug="0"
解釋:開啟或者關閉調試記錄。當開啟時,eaccelerator會將對一個快取檔案的
每次請求都寫進log。開啟此項只對調試eaccelerator是否有BUG時有益處。
"1"指開啟,"0"指關閉。預設值為"0"。
eaccelerator.log_file="/usr/local/apache2/logs/eaccelerator_log"
解釋:記錄檔
eaccelerator.filter=""
解釋:決定哪些PHP檔案應該被緩衝。可以指定一個範圍(比如"*.php *.phtml"),
這樣被指定的檔案就會被緩衝。如果該範圍以!開頭,
被指定的檔案就不會被緩衝。預設值為"",表示緩衝所有的PHP檔案。
eaccelerator.shm_max="0"
解釋:一個使用者使用例如eaccelerator_put之類的函數能夠往
共用記憶體中載入的最大資料。預設值為"0",表示不限制。(單位為位元組)
eaccelerator.shm_ttl="0"
解釋:當沒有足夠的空閑共用記憶體去嘗試緩衝一個新指令碼時,將刪除至少
在shm_ttl秒之前沒有被訪問過的檔案。預設值為"0",表示不嘗試從
共用記憶體中刪除任何舊的指令碼。(單位為秒)
eaccelerator.shm_prune_period="0"
解釋:當沒有足夠的空閑共用記憶體去嘗試緩衝一個新指令碼時,將刪所有舊指令碼,
前提是這個嘗試在超過shm_prune_period秒之前被執行過。預設值為"0",
表示不嘗試從共用記憶體中刪除任何舊的指令碼。(單位為秒)
eaccelerator.shm_only="0"
解釋:開啟或者關閉在磁碟上緩衝編譯過的指令碼。這個參數對會話資料
和內容緩衝沒有效果。預設值為"0",表示使用磁碟和共用記憶體來緩衝。
eaccelerator.compress="1"
解釋:開啟或者關閉緩衝內容壓縮。"1"指開啟,"0"指關閉。預設值為"1"。
eaccelerator.compress_level="9"
解釋:記憶體壓縮的層級。預設值為"9",表示最大壓縮。
eaccelerator.allowed_admin_path="/usr/local/apache2/htdocs/control.php"
解釋:eaccelerator控制檔案路徑,這樣,可以通過
http://your-web-server/control.php擷取圖形化訪問eaccelerator。
要使用這個功能,要把安裝原始碼目錄下的control.php拷貝到
/usr/local/apache2/htdocs/目錄下,並設定control.php檔案中
的使用者和密碼,以後,則需要檔案中的使用者名稱和密碼登陸。
同時調整php.ini中擴充外掛程式的目錄為上述的輸出
; Directory in which the loadable extensions (modules) reside.
; http://php.net/extension-dir
; extension_dir = "./"
; On windows:
; extension_dir = "ext"
extension_dir = "/usr/local/lib/php/extensions/no-debug-zts-20090626/"
3.建立緩衝目錄
目錄要與上面設定檔中指定的一致,並且,要確保webserver的運行使用者對這個
目錄有可寫入的許可權。
[root@tigertall eaccelerator-0.9.6.1]# mkdir /var/cache/eaccelerator
比如我的apache守護進程是有daemon使用者來執行的(可以在httpd.conf中找到)
那麼,我切換下目錄的屬主
[root@tigertall eaccelerator-0.9.6.1]# chown -R daemon.daemon /var/cache/eaccelerator
4.重啟apache
重啟apache,以啟用eaccelerator擴充。
訪問http://your-web-server/phpinfo.php
或者在命令列執行 php -v
可以看到eaccelerator已經啟用的資訊。
2.ImageMagick
ImageMagick是一套功能強大、穩定而且免費的工具集和開發包,
可以用來讀、寫和處理超過89種基本格式的圖片檔案,
包括流行的TIFF, JPEG, GIF, PNG, PDF以及PhotoCD等格式。
ImageMagick比gd提供了更好的影像處理品質。推薦使用。
下載ImageMagick的原始碼。
1.解壓縮
[gaohu@tigertall ~]$ tar -zxf ImageMagick.tar.gz
2.編譯安裝
[gaohu@tigertall ~]$ tar -zxf ImageMagick.tar.gz
[gaohu@tigertall ~]$ cd ImageMagick-6.6.3-0/
[gaohu@tigertall ImageMagick-6.6.3-0]$ ./configure
[gaohu@tigertall ImageMagick-6.6.3-0]$ make
[gaohu@tigertall ImageMagick-6.6.3-0]$ sudo make install
3.下載imagick
這個是php的一個支援ImageMagick的擴充。
:http://pecl.php.net/package/imagick
4.編譯安裝imagick
這裡,像安裝eaccelerator一樣,把imagick安裝為php的一個擴充。
[gaohu@tigertall ~]$ tar -zxvf imagick-3.0.0RC2.tgz
[gaohu@tigertall ~]$ cd imagick-3.0.0RC2
[gaohu@tigertall imagick-3.0.0RC2]$ phpize
[gaohu@tigertall imagick-3.0.0RC2]$ ./configure \
--with-php-config=/usr/local/bin/php-config
[gaohu@tigertall imagick-3.0.0RC2]$ make
[gaohu@tigertall imagick-3.0.0RC2]$ sudo make install
Installing shared extensions:
/usr/local/lib/php/extensions/no-debug-zts-20090626/
Installing header files: /usr/local/include/php/
4.配置imagick
[gaohu@tigertall ~]$ sudo vi /usr/local/lib/php.ini
添加以下:
extension = "imagick.so"
儲存退出。
ImageMagick和imagick的安裝完成。
3.phpMyAdmin
phpMyAdmin是一個網路的資料庫管理平台,這個跟php是沒有什麼關係的,
不過使用起來也是比較方便的,所以推薦大家使用。
下載代碼後,直接把代碼解壓到網站根目錄下的一個檔案夾,就可以使用了。
[gaohu@tigertall ~]$ cd /usr/local/apache2/htdocs/
[gaohu@tigertall htdocs]$ tar -jxf /home/gaohu/phpMyAdmin-3.3.4-all-languages.tar.bz2
[gaohu@tigertall htdocs]$ mv phpMyAdmin-3.3.4-all-languages phpMyAdmin
[gaohu@tigertall htdocs]$ cd phpMyAdmin/
[gaohu@tigertall phpMyAdmin]$ cp config.sample.inc.php config.inc.php
然後就可以以http://your-web-server/phpMyAdmin來訪問phpMyAdmin的功能了。
我所用到的就是這麼多了,如果有更好的,也希望大家推薦給我。^_^。
下面就要再次安裝meidiawiki了,呵呵 。
<201007219 高虎 於杭州 部落格園>