發表文章

目前顯示的是 2月, 2020的文章

PHP Debug使用 Notepad++ 和 Xdebug

圖片
最近工作上需要瞭解一套使用PHP Framework開發的系統,但程式碼多到看不過來,不知如何切入,想以debug的方式找系統執行上的蛛絲馬跡,也對後續開發有所幫助。 實際找了一下發現還滿多方案,因為懶的再安裝其他東西,最後選擇比較適合目前開發環境(windows)的方式:Notepad++ 搭配 Xdebug,雖然Notepad++的DBGP Plugin最後更新的版本感覺有點舊(2012),但目前看起來還堪用。 找出適合開發環境的版本並 下載Xdebug 提醒:除了需要挑選與PHP版本一致外,也需確認PHP是TS(Thread-Safety)還是NTS(None-Thread Safe),可從phpinfo的PHP Extension Build這一項得知。 下載之後將dll放至PHP的ext目錄下,並在php.ini加入Xdebug相關設定(參考設定如下),設定完成後重新啟動Apache服務。 [XDebug] ;指定dll所在位置 zend_extension="E:\AppServ\php7\ext\php_xdebug-2.9.2-7.3-vc15-x86_64.dll" xdebug.remote_enable=1 xdebug.remote_host=127.0.0.1 xdebug.remote_port=9000 xdebug.remote_handler=dbgp xdebug.collect_vars = On xdebug.collect_return = On xdebug.collect_params = On xdebug.profiler_enable=1 ;視情況自行調整路徑 xdebug.profiler_output_dir="E:\AppServ\www\xdebug" xdebug.remote_log="E:\AppServ\www\xdebug\xdebug.log" xdebug.profiler_output_dir ="E:\AppServ\www\xdebug" 安裝Notepad++的外掛工具 DBGP Plugin 下載後將dbgpPlugin.dll複製到Notepad++的 plugins資料內

phpMyAdmin Error 有關session.save_path的設定

圖片
今天打開phpMyAdmin竟然出現錯誤訊息! 看了一下錯誤訊息內容,回想是昨天手癢做了C槽的磁碟清理的動作造成Session目錄的遺失。 於是重新設定php.ini裡面的session.save_path,重啟Apache,即可順利登入phpMyAdmin。 參考連結: https://natsumi93.pixnet.net/blog/post/23257067-phpmyadmin-%E8%A8%AD%E5%AE%9Aphp-session-%E4%BD%BF%E7%94%A8

PHP 7 無法載入LDAP的解決方式

本機環境:Apache 2.4.41 + PHP 7.3.10 今天測試LDAP認證程式時,發生HTTP ERROR 500的錯誤,從Apache的error.log中發現 Unable to load dynamic library 'ldap'(tried: C:\\AppServ\\php7\\ext\\ldap... 查了不少文章,大部份是舊版本的問題處理,試了很多方法,像是檢查LDAP模組是否啟用,路徑…等等,最後終於找到解決方法,便將過程記錄下: 首先修改PHP目錄下的php.ini 檢查extension_dir是否與實際目錄位置一致(extension_dir="C:\AppServ\php7\ext") 把LDAP的註解拿掉(extension=ldap) 重新啟動Apache 重新啟用之後,發現error.log仍然出現錯誤訊息,最後找到一個與我有類似環境及狀況的文章,原因似乎是Apache的bin目錄缺少了 libsasl.dll ,其解決方式就是把PHP目錄下的libsasl.dll複製一份到該目錄(C:\AppServ\Apache24\bin),然後再重新啟動Apache。 再次打開error.log,錯誤訊息不再出現,認證程式也順利執行。 參考連結: https://www.cnblogs.com/breeze-zZ/p/11170982.html

LimeSurvey安裝筆記

圖片
LimeSurvey 問卷管理系統廣泛應用於教育、研究等領域,此次因工作需要安裝測試,所以將過程筆記起來。 前置作業: LimeSurvey 採用 PHP 語言開發並搭配資料庫,故需先安裝伺服器軟體 ( Apache ) 及資料庫 (MySQL) ,本身開發環境為 Windows 作業系統,為了快速建置 Apache 、 PHP 、 MySQL 等,所以採 AppServ 伺服器環境整合包 來建置環境。 ( 官網下載 https://www.appserv.org/en/ ) 安裝的過程中要注意, IIS 和 Apache 預設都使用 80 port ,若本機已先裝 IIS ,再裝 Apache ,會導致 Apache 服務無法啟用,解決方式便是將 IIS 的 port 改成非 80( 暫時改成 81) ,才能啟用 Apache 服務。 安裝 LimeSurvey : 下載 LimeSurvey ( https://www.limesurvey.org/downloads ) ,解壓縮放到 Apache 網站目錄下。 在瀏覽器輸入本機網址,例如: http://localhost/limesurvey/index.php?r=installer/license 同意授權 安裝前環境檢查  資料庫設定,輸入相關欄位值,資料庫名稱假設命名為LimeSurvey,按下一步 因為MySQL尚未建立LimeSurvey,所以會出現資料庫不存在,點選建立資料庫 輸入管理員(網站管理員),完成安裝。 參考連結: 在 windows 7 上安裝 AppServ 2.5.10 https://chiangchingchi.pixnet.net/blog/post/80669591