2012-10-24 39 views
1

我用PHP5開發了這個項目。該項目給了我全部細節(使用PHP版本,使用mysql版本等)。我的客戶說使用PHP5開發項目,我很高興這個原因,我可以練習我的OOP。從php 4移動到php 5

在我的本地服務器上完成項目後,我將文件上傳到活動服務器,問題是活動服務器運行在PHP4中,所以我們的工作在運行項目時都搞砸了。

今天是項目的最後期限,我已經這麼做了幾個星期的PHP5 OOP編碼,在這一天結束之前,我必須讓它與現場服務器一起工作。

我的客戶不想讓我更新服務器的PHP版本,因爲其他一些網絡應用程序可能會受到影響。如果我重新編碼項目這可能需要幾周時間。

有什麼辦法可以做到這一點?我的時間不夠了。

+2

這聽起來像一個問題,應該通過部署到兼容PHP版本的服務器來解決。 – alex

+0

是的,但客戶端只想在服務器和服務器上上傳它們。 –

+0

也許有一個解決方案,將服務器設置爲php5僅用於您的項目通過使用htaccess與AddType x-mapp-php5 .php AddHandler x-mapp-php5 .php當你的ISP允許這個... – donald123

回答

2

用現代安裝的PHP運行另一臺服務器(可能位於另一臺機器上,可能是一臺虛擬機)。

使用Apache ProxyPass指令將舊服務器映射到新服務器上。

開始使用現代版本的PHP測試舊服務器上的Web應用程序,並開始遷移所有內容,以免它儘快運行過時的安全隱患。

+0

遷移過程中,我是否有足夠的時間去做?我還剩2個小時。 –

+0

在沒有現有公司磁盤映像的情況下設置新的服務器? 2小時內?可能不會。 – Quentin

+0

好吧,我沒有別的選擇。除此之外,這不是我的錯。客戶告訴我使用php5,我使用它。我遵循他所說的話,所以它不是我的問題xD –

3

您可以在同一臺機器上運行多個PHP版本。嘗試谷歌搜索「在同一個Apache服務器上安裝2個PHP版本」。其中一個結果是here
關鍵的想法是爲PHP5和PHP4應用程序提供單獨的虛擬主機。

+0

,我該如何告訴我的應用程序使用哪個PHP版本? –

+0

@Cubixsyntax:您可以配置每個目錄甚至每個文件(如果不是每個虛擬主機,例如子域) – hakre

+0

我應該使用什麼方法來配置我的項目以使用php5而不是php4? –

1

我的客戶不想讓我更新服務器的PHP版本,因爲其他一些網絡應用程序可能會受到影響。如果我重新編碼項目這可能需要幾周時間。

如果在服務器上安裝一個兼容的PHP版本不是一個選項(你的客戶是,你可以有多個PHP版本彼此相鄰,甚至兩個系統彼此相鄰的是通過可訪問相同的域),那麼您需要重寫目標平臺的代碼。

由於這需要更多時間直到一天結束(或您的左邊兩個小時),因此需要解除截止日期並將PHP4移植到預算。

回顧頂部的選項我會說這種情況是瘋了。讓PHP 5在其他服務器上運行並完成任務。您需要來自客戶的更多合作。

+0

是的,這是瘋了。我在等待我的客戶回覆,我告訴他們,如果他們不想讓我安裝php5,那麼他們應該這樣做,使其成爲可能。 –

+0

告訴他們安裝它。我假設你沒有管理他們的服務器,所以這是他們的業務。 – hakre