由request產生token,丟給response的cookie(見request::generateCsrfToken())。
當response::send()的時候會一併呼叫response::sendCookies()(在response::sendHeaders()),
如果request有丟給response csrfToken的cookie時,
這時就會設定csrfToken到cookie裡。 閱讀全文〈Yii2 crsf的機制〉
作者: 俊信
函數realpath
語法 : string realpath ( string $path
)
之前都一直以為realpath只是用來轉換 ./或../ 為真實路徑。
原來它還會自動偵測參數$path是否存在,不存在會回傳false。
另外,執行的程式必須對 $path 有存取的權限,否則也會回傳false。
設定php.ini的include_path
在cygwin安裝apache, mysql , php
必要套件 mail, sSMTP, cygrunsrv, httpd, php, mysql
設定cygserver
cygserver-config
安裝httpd
/etc/rc.d/init.d/httpd install
安裝windows service
cygrunsrv -S cygserver
cygrunsrv -S httpd 閱讀全文〈在cygwin安裝apache, mysql , php〉
設定phpMyAdmin新增資料庫時的預設編碼為utf8
找到mysql的設定檔my.cnf或my.ini,設定如下。 閱讀全文〈設定phpMyAdmin新增資料庫時的預設編碼為utf8〉
OpenSSH Server on Windows 10使用金鑰認證
bundle install顯示「系統找不到指定的路徑」
在windows系統上執行 railsinstaller安裝完 rails on ruby之後,
一般會先執行gem update rails,這可以正常執行。
接著可能需要調整Gemfile的設定以及執行bundle install,
結果bundle install的結果就是顯示「系統找不到指定的路徑」,這實在是很奇怪。 閱讀全文〈bundle install顯示「系統找不到指定的路徑」〉
MySQL 5.7的data資料夾檔案無法直接覆蓋使用
在以前的版本,記得data裡的資料夾,也就是資料庫的實體檔案是可以直接覆蓋使用的。
就算可能因此少了某些資料表,尤其是InnoDb格式的資料表可能因此無法正常顯示,
但伺服器運作的至少還算正常。 閱讀全文〈MySQL 5.7的data資料夾檔案無法直接覆蓋使用〉
在Windows安裝Git server及ssh server
安裝SSH Server
首先是安裝ssh server,直接參考[[Windows] 安裝 SSH Server @ Windows XP]。
SSH帳號是利用windows的帳戶功能來管理,之後再利用mkgroup及mkpasswd將系統的群組及帳號匯出到SSH server可讀取的檔案,例如etc\group 及etc\passwd。
之後視情況可以調整etc\passwd裡的內容,例如使用者群組id,或者是ssh帳號登入後的起始目錄。
我不確定登入ssh後的環境變數是否可以設定在某個檔案上,但應該可用windows設定環境變數的方式來設定,如下圖。
例如PATH這個環境變數就很重要的,如果設定不對,可能會導致一些程式就無法正常執行。
閱讀全文〈在Windows安裝Git server及ssh server〉
wordpress從php 5.2轉移到php 5.3的相容性問題
把wordpress從php 5.2(win32)移轉到php 5.3(win64),發生了相容性的問題。
一開始是發生在首頁,但如果指定某些頁面又是正常。經過持續不斷的echo , die之後,
最後問題是在wp/wp-includes/formatting.php這隻檔案裡的wptexturize函數。
php 5.3(win64)一般情況還是可以正常執行的。但若是丟給這隻函數處理的文字內容有個 [ 字元,它的解析過程就直接崩潰,連錯誤訊息也沒有,一點反應都不給。
發生問題的是下列片段。這個在php 5.2(win32)完全正常。 閱讀全文〈wordpress從php 5.2轉移到php 5.3的相容性問題〉