PHP 安全 – 不要暴露 phpinfo

有時候為了驗證和測試配置是否正常,可能會利用 phpinfo 打印配置信息,而測試完畢後千萬別忘記刪掉對應的文件,因為 phpinfo 包含了很多敏感的數據。
舉個例子,如果你配置了 Redis 作為 Session Handler,那麼你的 Redis 連接信息就已經暴露出去了,這是十分危險的行為。

PHP 內置的服務器

一般地,PHP 項目需要搭配 Web 服務器一起使用,如最常見的 NGINX 或 Apache。但有些時候,如果急切需要搭建一個 PHP Web 運行環境,但是又沒有已安裝好的 Web 服務器,此時就輪到 PHP 內置的服務器登場了。

PHP PDO 持久連接的一些思考和實踐

最近查閱 PHP 官方的 PDO 文檔
連接與連接管理 發現個有趣的配置:持久化連接。
這一看,感覺像似連接池的東西,腦海中一下子就浮現好幾個問題:

  • 持久連接不是可以減少建立數據庫連接所產生的消耗,以到達複用連接,提高性能的目的嗎,為啥沒有默認設置呢?
  • 持久連接可以設置最大連接數嗎?
  • 是否存在事務和死鎖問題呢?若有應該如何避免呢?

PHP 編譯安裝詳解

前段時間,想嘗試下 PHP 的多線程擴展 pthreads ,由於其要求 PHP 啟用 ZTS (Zend Thread Safety),
但是筆者所使用的發行版所能安裝的 PHP 包都是 non-zts 的,所以只能自行編譯和安裝 PHP 了。