iT邦幫忙

0

怎樣修正遠端php

php

伺服器已經上線了,
但是沒有健全的文件、檔案,
只能連到網站進行測試,
進行修改後用PTF上傳回去,
因為原檔案都是用php去include頁面,
我目前是用chrome的console看錯誤推斷,

因為我現在算是Client,大部分難修正
&我沒法直接遠端伺服器

請問有推薦的方式可以debug嗎?

看更多先前的討論...收起先前的討論...
ckp6250 iT邦好手 1 級 ‧ 2020-12-08 14:50:37 檢舉
我的做法是遠端主機開 NFS 伺服器服務。
本地端則把它 mount 成一個磁碟機資料夾。
這麼一來,就跟在本機作業差不多了。
我嘗試使用新增一個網路位置
但是無法,
如果變成資料夾在Client可以顯示PHP的錯誤嗎?
player iT邦大師 1 級 ‧ 2020-12-08 15:49:48 檢舉
PTF? 這個嗎? 我沒用過耶 orz
https://en.wikipedia.org/wiki/Program_temporary_fix

一般開發PHP的,通常會在本機端架個PHP+Apache的環境
以方便debug
確定沒問題後才放到Server端
而極少會直接用遠端debug,避免影響到Server端的運作
我本來也是都主機架設,
只是現在這個專案,
要啥都不給,
我也不知道怎樣用,
只能這樣,
改檔案出錯我都不知道哪裡錯
ckp6250 iT邦好手 1 級 ‧ 2020-12-08 17:16:13 檢舉
>>我嘗試使用新增一個網路位置
不是哦,是 nfs + mount

>>如果變成資料夾在Client可以顯示PHP的錯誤嗎?

可以啊,php的錯誤訊息可以寫入 log 檔,您只要看那個 log 檔,就知道錯在哪裡了。

比如我的 error.log
=====================
錯誤檔名: /var/www/vhosts/xxxxxxxxx.com.tw/httpdocs/dev/lu_ext/ajax_pool.php
錯誤行號: 2440
錯誤代碼: 8192
錯誤訊息: The each() function is deprecated. This message will be suppressed on further calls
操作人員:
系統功能:
發生時間: 2020-12-08 08:18:00
來源位址: 111.255.91.34
=====================================
  
  因為我租用 gcp,也只能 clinet 了,而且有時在公司,有時在家上班,不可能到處架設完整的環境,外地還有另一名工程師,我們都是用 mount 的方式在作業,而且所有檔案都等同於在本機,複製、更名、刪除、備份也很好操作,比 fpt 好用多了,對我們而言是最方便的模式了。
froce iT邦大師 1 級 ‧ 2020-12-08 18:48:34 檢舉
在地端建測試環境是必要的吧...小問題在線修,大問題你不自建測試環境只能說你膽子很大。
這年頭有docker,測試環境很好建
我也想要在本地端架設環境,
而且還是整個案子要接,
要資料庫,不給,要所有檔案,不給,
原設計,沒架構圖,沒流程圖,沒資料庫規劃表,
連裡面的邏輯計算都沒有。
只能看原檔案自己摸索
其實這我就不懂了。如果你有檔案修改的權限。資料庫不給或是沒辦法給。
可以自已去導出來才對。
隨便寫個檔案系統才整個檔案拉下來也不會是問題。

有些業主也不是真的不給,而是他們不會或不懂。

我就曾經遇過也是放在套裝的一家管理公司上。
他們只有進去系統後台的帳密。
主機空間啥的都不知道。連域名在哪也不清楚。
連ftp也沒有。後台是可以上傳php檔。
我後來只好自已用個簡單的東西全部處理回來。
這樣要跟你說經過你才會知道啥較無言
一開始只給我照片要我照樣做一個出來
要裡面的image說:沒有
之後我跟他說他在給我的API裡面有找到圖片
他才說 那他把裡面的圖片給我
要資料庫,連結啥都不給,只說串他寫好的API就好了
快一個月給了資料庫的連線,(前幾天而已)
可以進去看資料了,然後給另一個網站(別人寫的那個)用FTP連線修改,
全部的重點是 他啥都有,全都不給,要我這樣遠端使用,整個消耗耐性
你如果真的啥都沒有,我自己弄,我無怨言
但是他啥都有,啥都不給,要別人弄到一段時間再給,
明明知道專案很趕,還這樣弄
是我早就不幹了。
如果說資料庫有個資問題。我會請他輸出資料庫結構出來就好。
如果連這都沒辦法給。我會在合約上指名時間加長合約。

一般我之前在接案子。都會先要求這些東西有存在,並在合約上註明。
如果因為這些因素造成我的時間問題。我有權棄約且不得收回訂金。
我每次在訂合約都會寫上這條的。

2 個回答

0
kikulu
iT邦研究生 4 級 ‧ 2020-12-08 16:11:06

感覺像是掛在hosting,所以透過ftp更新,不能遠端那就只能自己搭環境了

本機搭一個server環境,把程式copy回來,不過資料庫連線應該會有問題

2

正常建議還是想辦法建立一個本機環境來做debug的動作。
不要直接線上測。因為這也很危險的。

真的要線上測也最好做好測試單元。

不過我想你目前維護的因該是你上次提的那個程式。
那就gg了。

我曾經也維護過舊專案及舊式的寫法。連phpmyadmin這一類的資料庫管理都沒有。
放上去還不給用@@"

我是先放個phpinfo確定一下他有啟用的模組是什麼。
然後寫個簡單的導出資料程式。將資料導出後。
才在本機上架好處理問題。

我要發表回答

立即登入回答