2010-07-24

Ubuntu 如何手動安裝( 從原始檔編譯 ) PHP 的 Suhosin 擴充 ?

本來,阿舍只有編譯 PHP 的程式碼,後來才想到還要加入 Suhosin 的擴充才應該會比較安全,於是,就直接去下載了 Suhosin 的 Patch 來,因為阿舍那個時候以為是要去 Patch PHP 的原始碼之後,再重新編譯一次 PHP 的哩 ! 還好,後來有再瞄一下 Suhosin 網站上的 FAQ,才發現,原來可以不用這麻煩來的,可以直接只編譯 Suhosin 就可以了,不需要再連 PHP 一起重新編譯起的...

首先,要從這裡來下載 Suhosin 的原始程式碼 ( 要注意一下,要是下載的是 Suhosin Extension 的版本,而不是 Suhosin Patch 的版本 ) ,然後,用下面的指令把它解壓縮 ( 阿舍下載時的版本是 0.9.32.1 版 ) 。

tar -xzvf suhosin-0.9.32.1.tar.gz

接著,依照下列的順序依次執行指令,來完成 Suhosin 的編譯和安裝。

cd suhosin-0.9.32.1.tar.gz

phpize

./configure

sudo make

sudo make install

上面的動作跑完之後,會把 suhosin.so 這個檔案產生在 PHP 的 extensions 資料夾裡,阿舍自己編好的 PHP 是安裝在 /usr/local/lib/php 裡,而 extensions 資料夾就是在 /usr/local/lib/php/extensions,不過,suhosin.so 會放在 /usr/local/lib/php/extensions/no-debug-non-zts-20060613 裡,就是 extensions 資料夾的下一層裡。

再來就是要改 PHP.ini 的設定了,請打開 PHP.ini 之後,先找到 extension_dir 這項設定,然後,把上面找到 suhosin.so 檔案的資料夾路徑指給 extension_dir 這項設定,以阿舍為例,要設定如下:

extension_dir = "/usr/local/lib/php/extensions/no-debug-non-zts-20060613"

最後,在 PHP.ini 檔裡找到 extension 的區段,然後,加入下面這一行後存檔.這樣 PHP 的 Suhosin 擴充就算安裝完成了....

extension=suhosin.so

推薦閱讀


有疑問? 問題還是沒解決嗎? 歡迎下方留言提問和討論 😁

沒有留言 :

張貼留言

歡迎留言提問和討論 .... 😁