PHP 的 getimagesize

如果你使用 freebsd 的 ports 安裝 mod_PHP4,那麼在使用 getimagesize 判斷 SWF 格式時,可能會回傳 (int) 0。這個問題不是 getimagesize 的錯,兇手是 zlib :p

這裡 其實已經提供了解法,不過愚笨如我,碰到了這個問題兩次,兩次都手忙腳亂地花了一些時間找答案。為了怕第三次,還是把詳細作法說明一下好了:

在 ports 裡安裝 www/mod_php4 預設是乾乾淨淨,不加什麼選項的,得再用 lang/php4-extensions 把自己想要的 extension 加進去。如果你已經這樣做過了,那麼首先編緝 /var/db/ports/mod_php4/options, 新增一行:

WITH_ZLIB=true

然後,修改 /usr/local/etc/php/extensions.ini,把有 zlib.so 的行mark起來:

# extension=zlib.so

最後,重編 www/mod_php4:

cd /usr/ports/www/mod_php4
make clean all deinstall reinstall

那麼,在重新啟動 apache之後,應該就好了。

發表迴響

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料