Browsed by
分類:PHP

Apache 2.4 + PHP 7.1 + PHP-FPM install

Apache 2.4 + PHP 7.1 + PHP-FPM install

OS: Ubuntu Server 16.04.3 LTS amd64

Apache Version: 2.4.27

PHP Version: 7.1.8

 

Step 1. 更新 APT Source,取得最新版套件資訊

Read More Read More

[PHP] Failed loading php_xdebug.dll

[PHP] Failed loading php_xdebug.dll

試用 PHPStorm 要設定 PHP Interpreter 時總是偵測不到 Xdebug

下 CLI 時發現載入發生錯誤

 

WAMP 懶人包貌似沒裝好

懶得重新安裝,從 Stack Overflow 爬到了 Xdebug 官方有線上分析工具

可以幫忙進行 Xdebug 的除錯,並提供修正方法

連結: https://xdebug.org/wizard.php

 

使用方法很簡單

只需要在 CLI 下執行 php -i 將輸出的 PHP Information 貼即可

 

以此圖為例

網站直接提供了對應到 PHP 7.0.7 的 Xdebug extension DLL 檔

也會告知你應該放在哪個目錄下, php.ini 要做哪些修正

照著做後重新啟動 service,就解決了

 

Reference:

  1. Stack Overflow: XDebug not loading on Windows 7 64 bit PHP 5.4
  2. Xdebug: Support; Tailored Installation Instructions
[PHP] 強制清除所有session

[PHP] 強制清除所有session

透過調整以下三種參數去清除不太即時,且還要改回設定

  • session.gc_probability
  • session.gc_divisor
  • session.gc_maxlifetime

 

Session預設是以檔案的形式存放在檔案系統中

透過刪除Session File也可以達到效果,且非常即時

缺點是無差別地圖砲,Server上所有網站的session都會被清掉

至於檔案是存放在/var/lib/php5

 

其中有個modules目錄是存放一些PHP的元件

記得不要手誤去刪到

刪掉所有Session Files

 

重整網站後就會發現session全部都刷新了

[PHP] 利用flush()、ob_flush()強制輸出網頁內容

[PHP] 利用flush()、ob_flush()強制輸出網頁內容

正常情況下,執行中的PHP過程中輸出的內容會先進到緩衝區 (output_buffer)

PHP Script全部執行完畢後,產生的資料才會從output_buffer一次輸出到瀏覽器上

但是若程式要跑一段時間,想要看到執行過程中輸出的內容,可以透過 ob_flush() + flush() 達成

雖然看起來名稱很像,但是做的事情不太一樣:

ob_flush():把PHP output_buffer (假設有打開)的東西輸出,但並不是立刻輸出到終端
flush():把非PHP output_buffer,伺服器上準備輸出的資料輸出到瀏覽器上”顯示出來”

 

寫一小段測試code

 

HTTP Server設定也會影響到function

Apache 預設值不影響,不過Nginx會

所以如果HTTP Server使用Nginx

需要針對PHP類型額外做設定:

編輯 /etc/nginx/site-available/default

 

值得注意的是fastcgi_keep_conn在Nginx下預設是off的

雖然啟用後理論上效能能得到提升 (Connection TIME_WAIT 數量會明顯下降)

不過在某些特殊情況下可能會發生異常

所以預設情況下是關閉的

 

Reference: Re: Why does fastcgi_keep_conn default to off?

 

[Laravel] 移除不要的Migrations

[Laravel] 移除不要的Migrations

 

第1頁 / 共4頁1234