2008-10-22 24 views
15

在變得有些疏遠開源之後,花了幾年的時間在ASP.Net中開發Web應用程序之後,我將開始做相當多的PHP/MySQL開發。在WAMP上開發LAMP是否愚蠢?

我已經非常無痛地安裝了WampServer以使開發環境在我的Windows機器上運行,但是我將要定位的平臺很可能是Linux。所以我的問題是,我可能遇到問題,因爲在Windows上進行開發而針對Linux?投資獲取開發我的LAMP應用程序的Linux環境設置是否明智?

+0

那麼,VirtualBox + TurnKey LAMP設備是微不足道的設置。 – 2012-01-10 04:36:37

回答

15

如果你可以,我會投資某種Linux,或至少* nix,開發環境。對於簡單的應用程序和網站,您的設置很好,但在部署時最終會遇到細微的差異。

下面是一些我頭頂的事情,如果你堅持使用Windows環境,你需要注意一些事情。

  1. 文件路徑。很多PHP函數都將文件路徑作爲參數。不要使用windows反斜槓()分隔符。即使你在windows上,PHP也會讓你使用正斜槓分隔符。理想情況下,用您自己的文件路徑類將其抽象出來。

  2. Apache模塊,PECL擴展。 Apache Windows和Apache Unix通常會默認安裝一組不同的Apace模塊。另外,相同版本的模塊可能在不同的平臺上運行不同。如果您的應用程序依賴於任何 apache模塊,請確保它適用於這兩個平臺。 PHP定製擴展(PECL)同樣如此

  3. 過程分叉。在網絡應用程序中使用exec,`等是一個好主意,但如果你使用這些功能,它們將在Windows和Windows之間表現不同。* nix

  4. 文件寫入,鎖定等。作品不同

  5. 電子郵件是這兩個平臺

  6. 的PHP組對Windows代碼字是「一些平臺」上不同的處理。你可以研究更多on your own,如果你想

一般情況下,越接近你的開發環境,生產環境相匹配,你就會有更少的環境/部署的相關問題。

希望有幫助!

13

我在過去的幾年裏一直在做這件事,而且還沒有遇到任何問題 - 如果有的話,它強迫你寫更多的可移植代碼給你帶來好處。

+1

是的。請在WAMP上開發並部署在LAMP上,我們正好相反,雖然這是痛苦的過渡,但我們因此而變得更好。我可以在需要時熱切換生產環境進行測試,而無需擔心底層平臺。 – cfeduke 2008-10-22 21:27:36

+1

只要注意文件權限並記住,Windows不區分大小寫。不知道這可能會導致一些討厭的錯誤。 – levhita 2008-10-22 23:50:53

1

不,在燈上發展和運行燈應該很好,但至少在燈上。我已經走了兩條路,沒有太多問題(好吧,曾經有一些問題在WAMP上部署企業站點(不要嘗試使用PHP ISAPI篩選器),但現在可以解決(fastcgi))。只要你沒有添加任何PECL模塊,說明它們在Windows上不被支持,你就不應該有任何問題。另外(既然你說你使用WAMP,我假設你使用MySql),mssql和PHP有一堆問題(它要求嚴格限制查詢長度的古代驅動程序)。

1

理論上,PHP和MySQL應該是完全平臺無關的。

實際上,如果您打算擁有一個真正的生產應用程序,我建議您有一個測試環境鏡像生產環境,以避免意外。

1

是的我會推薦在儘可能接近您的生產環境的環境中開發。與Linux相比,PHP在Windows上的工作方式存在差異。和Linux相比,Linux處理文件權限的其他差異。我使用Linux虛擬機運行免費的VMWare服務器。我在Linux虛擬機上有一個Samba共享,我將其作爲Windows中的網絡驅動器進行安裝。然後我在Windows上使用Eclipse作爲我的代碼編輯器。

0

沒有,因爲相當多,如果你目標燈使用/Exec電話,和你不能WAMP唯一能做的通常這是一件好事,因爲這些應該是非常稀少使用。

2

權限和在Windows文件名不區分大小寫的事實是我能想到的兩件事情讓我感到痛苦。但他們是

  1. 可以解決,最壞的情況下用ftp客戶端來更改權限。
  2. 好的,簡單的方法讓你成爲更好的程序員(小的方式,是的)。
0

這是值得擁有一個LAMP沙盒,所以你可以知道在哪裏可以找到 - 以及如何編輯 - 配置文件,適應重新啓動服務,處理預定的工作等,如果你將不得不處理這些任務在生產中。

0

編號
如果您在一個週末有大約6-8個小時的空閒時間,可以清除所有VBox基本信息並設置完畢,那麼VirtualBox +共享文件夾應該很有用。 如果您正在切換到Linux,那麼這個過程可能需要長達一個月的時間,並且在生產代碼方面,您將非常高效地使用。
在使用[PCLinuxOS,CentOS,OpenSuse,Ubuntu]之一切換之前,最好先在VBox for Windows上實踐Linux。我更喜歡CentOS,PCLinuxOS。 有一個稱爲SLAMPP的寶石和另一個名爲XAMPP <的美麗 - 適用於Linux和Windows。
IMO作爲一個粗略的猜測,如果你希望爲每個項目編寫2000-3000行代碼(你寫/添加),對於6mo-1yr,同時使用VBox堅持Windows和主Linux。
如果在上面,或者如果你打算做一個很酷的新LAMP網站,我認爲你應該先切換到Linux。花更多的時間來適應Linux。儘可能早地開始使用雙引導或VBox,儘可能早地開始學習 - 學習Linux足以調試LAMP應用程序確實需要時間。

0

路徑,小心路徑。你可以建立一個完整的CMS,因爲路徑它會搞砸。