PHP 開發工具三部曲 Episode II – Zend Server [ 500 error 事件簿 ]

PHP 開發工具三部曲 Episode II – Zend Server [ 500 error 事件簿 ]

 
 

如果要開發 web .net 就需要安裝 IIS + .NET Framework,如果要開發 JSP 就要安裝 apache + tomcat,如果要開發 PHP 那就一定要安裝 apache + php 了,不過一般應用程式開發還會包含 mysql ,因此整合好套裝包的 php 執行環境就很多種,包含有手動安裝 Apache+php+mysql ,或是選擇 MAMP / Appserv / XAMPP 等等等,不過這都是執行環境,並不算是開發環境,因此我們需要 Zend Server,來看看他可以協助我們什麼吧。

image 2010/05 Zend Server 以開發到 5.0 的版本,如果只需要執行環境也可以裝 CE 版本

 

相信很多開發 php 的朋友,尤其是使用 notepad++ 的朋友,對於程式開的 DEBUG 方法一定很習慣事先將會需要的變數分類,在將所有的變數分開存於陣列中,當需要知道變數目前的資料時,在用 DUMP 的方式將資料印在畫面上,如果是運算中發生的錯誤,例如是 print  $a+$b*$c ; 這段運算式,如果不管怎麼樣結果都不如我們預期的資料,以往的作法一定是把 $a , $b , $c 三個變數印出來,在看看是否正確,這種我們稱為執行期錯誤,如果只是如範例的三個函數那還好,如果是迴圈內的的變數,或是想要知道各變數目前的值,像這種瞎子摸象的 Debug 方式你厭煩了嘛。

趕快來把 Zend Server 裝起來吧,很不幸的,Zend Server 是老外開發的,很不幸的,在非英文語系的 win os 下安裝好,預設是不可以用的,他會出現 500 錯誤碼,後面我們會提到如何解決。

注意!本篇圖很多因此如果放大圖片的時候會需要等待較長時間。

STEP 1 :

Zend 官方網站下載最新版的 Zend server 5.0

CE 版本為社群版本,免費,但是無法使用 debug 功能也無法接受支援

跟安裝 appserv 是相同意思,不過 zend 公司是 php 維護的主要公司之一。

STEP 2 :

執行安裝檔案

因為我們要順便一起安裝 phpmyadmin 與 mysql 以及其他套件,因此呢我們要選擇 Custom 安裝

image

接下來我們把想要一起安裝,我是比較貪心把可以打勾的通通都打勾啦 (建議不要太貪心喔,因為附加安裝的軟體通通都要另外在下載的)

image

我希望把安裝路徑修改一下,我把它安裝在 C:/Zend 底下

image

因為沒有特殊要求因此 port 就不更改了

image

等了很久終於裝好了(太貪心了,全部都裝),兩個都打勾按下確定就裝好了

image

STEP 3 :

 

詭異的 Zend Server 500 Internal Server Error 錯誤事件簿

當你很開心的安裝好 Zend server 後,瀏覽器應該也會很挺你的開出 http://localhost:10081/ZendServer/ 這個網站,但是,看來 Zend Server 並不這樣想 ( 我猜他大概沒看過 艋舺 吧~ 意義是啥小,我只知道意氣啦!!~ ),很不講理的吐了一串錯誤訊息

Internal Server Error

The server encountered an internal error or misconfiguration and was unable to complete your request.

Please contact the server administrator, admin@example.com and inform them of the time the error occurred, and anything you might have done that may have caused the error.

More information about this error may be available in the server error log.

image

因為這個錯誤訊息導致我花了大概四五天的時間都沒辦法把 Zend server 架起來,而且翻了很多技術文章,也沒有提到這個問題,最後是在 Zend Form 找到這個官方的 bug 提示。不過後來我在這位前輩的部落格中看到也有提到同樣的問題,不過前輩他把安裝過程放在 google docs 並且用 iframe 的方式崁入,結果當然是google找不到囉。

這個 bug 原因是安裝在非英語系的win os造成的檔案內容錯誤,因此導致 zend server 的管理介面無法啟動。

解決方式 :

找到 zend server 的安裝目錄,並且找到 etc/ZendEnablerConf.xml 的這個檔案,如果你是依照我上面的安裝步驟以及相同的設定,那麼他應該會在 C:/zend/ZendServer/etc/ZendEnablerConf.xml 這個位置,將這個檔案打開(win7 的用戶請先給予修改權限)

打開這個檔案以後看起來沒什麼問題,但是怎麼 xml 的開頭會變成亂碼了呢~

image

我們把前面的部份復原成  <?xml

image

之後重新啟動 apache 就可以囉 (請到服務管理員)

回來了,大師兄都回來了。

image

STEP 4 :

同意zend條款後,設定一下自己的密碼以及把授權碼打進去

image

如此一來 Server 的部份就設定好囉

image

 

Zend Studio Debug mode

 

還記得我們之前安裝好的 Zend Studio 嘛,當我們打開 Zend Studio 的時候下方會自動提示我們找到 Zend Server

image

不過如果是預設偵測他的 port 應該會寫 10080 ,我們先開啟屬性把它修改為 80 port

image

修改完後我們就可以開啟一個 php project

File – New – PHP project

如果正確偵測到 server 安裝,這時應該會直接把專案設定在 htdocs 資料夾內

image

接著我們 new 一個 php file

image

接下來我們輸入一些範例程式碼,打完之後再程式碼區域 按右鍵-> Run As –> php web page

image

這個時候應該會出現一個對話視窗,請確認是否還有出現 :10080 ,如果有,表示我們的 server 設定沒有設定好,請重新設定。

image

很高興我們正確的將資料計算出來

image 

 

不過如果計算是結果是錯誤的,那我們就需要 debug,這時候回到程式碼頁面,你可以在最後輸出程式碼的最前面的數字區點擊左鍵兩下後,在程式碼編輯區域按下右鍵 –> debug as –> php web page

image 

這時候會跳出一個對話窗,問你是否要進去 debug mode

image

這時候程式碼會停在我們插入的中斷點,並且會多出一個變數區域,會記錄目前我們程式執行期內的所有變數以及他的形態,這樣子就不需要在瞎子摸象了。

image

 

 

 

 

 

 

 

 

 

 

 

Debug mode 應該是最好用也最必須要的功能,不過還有其他 ide 軟體也可以達到這個功能,例如 NuSphere 所出產的 PhpED 也有 Debug mode ,並且還包含 db 的連線與控制,也是蠻不錯的一套軟體,但是基於 zend 是 php 維護的主要公司,牆頭草兩邊倒,目前還是會導向 zend 吧,並且後面還有 Zend Frameword 框架要用,因此…

其他 zend server 重要的功能包含

提高PHP應用程序的可靠性和安全性
確保成功部署
在客訴電話之前發現問題
快速精確找出問題的根源跟踪代碼
提高應用程序性能
工作隊列:卸載執行長時間運行的PHP腳本

當然,這也是要費用的 一年更新的費用為 1195 美金,如果只是需要執行 php 程式碼,可以下載 Zend Server CE 版本來使用,是免費的,不過不知道是否可以使用 Debug mode 。

最後這一篇實在很長,如果看完的人,謝謝你的詳細閱讀

 

Random Posts

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值