2010-03-26 47 views
0

我打算在PHP和MySQL中構建一個CMS,主要用於我自己的娛樂和教育。 (儘管誰知道,我可能會想出一些有用的和酷​​的東西,任何可能的東西。)稍後我會問代碼架構等問題。目前,我對開發工具更感興趣。在PHP中構建CMS:開發工具

到目前爲止,我所有玩過的代碼都是在網絡服務器上完成的,而且我通過FTP進行了編輯。我認爲使用本地主機可能會更快。另外,這樣,我可以使用版本控制(我從來沒有做過)。

所以,

A.如何設置了許多子域本地主機服務器的Ubuntu 9.10的計算機上。是XAMPP for Linux要走的路,還是應該使用標準的Apache發行版? (或另一個網絡服務器?)對於這個問題,是否有可能在同一臺計算機上設置多個網絡服務器,並將它們用於不同的本地主機子域?

B.如何設置涵蓋所有代碼的版本控制thingy(它將在localhost的幾個子域中以及幾個共享文件夾中)?我讀過Joel Spolsky的HgInt教程,它使Mercurial看起來不錯。簡單,特別是如果你在自己的工作。

C.我應該繼續使用的gedit編寫HTML/CSS/JS/PHP,或有更好的自由編輯在那裏,這些語言?

回答

0

我建議不要使用XAMPP,特別是如果你沒有經驗,因爲這會繞過集成在Ubuntu中的所有軟件包管理功能(所以如果你需要手動跟蹤和應用安全更改,如果你需要的擴展不在XAMPP中發行版需要從頭開始編譯,對於可能與Apache安裝交互的大多數外部管理工具類似)。

是的 - 你可以在同一個網絡服務器上有很多虛擬主機(在每個Apache網絡服務器上有1200個名爲虛擬主機的地方工作 - 啓動花費大約2秒而不是0.5 - 但在此之後,你永遠不會知道配置文件是巨大的)。

如果您正在自己的工作,那麼這是關於唯一的情況下,使用分佈式版本控制系統沒有提供超過併發版本控制系統的好處,併發版本控制系統沒有傳統版本控制系統。但即使它在技術上沒有優勢,但獲得具體的產品技能也許對您有好處。

您使用的編輯器是個人選擇的問題。雖然我個人會在我的建議中列出gEdit(我建議NetBeans或Zend Studio適合喜歡單獨IDE的人,否則vim,Eclipse,emacs)。

一個php documentor是(恕我直言)必須(我喜歡phpxref)以及某種測試工具包。

HTH

C.

+0

我已經把這個標記爲答案,因爲你給了一個很好的理由(我沒有想到)來避免XAMPP。 – TRiG 2010-03-29 10:35:02

0

答:我在Ubuntu上成功地在Linux上使用Xampp。設置一個普通的apache安裝並不困難,但我喜歡擁有一個「臨時」web服務器的優勢,在這個服務器中,更改很容易反轉,而不會影響我的正常安裝。

如果您想要子域名,請將apache配置爲使用虛擬主機。 B:我建議顛覆,但是VCS是一個宗教問題。特別是你使用什麼並不重要。一旦你做出選擇,然後研究VCS的使用。 C:Netbeans比gEdit好很多。這或Eclipse將是我的首選。我自己使用Ubuntu下的Netbeans。完整的IDE雖然會使開發比文本編輯器容易得多。主要是因爲代碼完成/集成調試器。

0

我認爲stackoverflow.com是用於編程的問題。你會想在serverfault.com上問這些服務器問題。再一次,他們可能會要求你谷歌。試一試。

編輯問題很酷。我使用Kate,只是因爲它帶有KDE並具有語法着色功能。

1

A.爲什麼在安裝LAMP堆棧時使用XAMPP就像sudo tasksel install lamp-server一樣簡單?例如,您可以使用VirtualHosts將任意數量的域添加到配置中(理論上講,無論如何,實際上數量會受可用資源的限制),因此您不需要多臺服務器。

B. sudo apt-get install mercurial也許?當然,如何創建一個存儲庫並添加您的項目取決於您 - 您應該閱讀Mercurial的文檔。

C.如果您打算進行任何嚴肅的開發工作,請使用Eclipse或NetBeans。

+0

我怕我不能接受這兩個答案和symcbean的。我已經給你一個upvote。 – TRiG 2010-03-29 10:36:15

+0

您可能想要編輯此答案以添加註釋,可能需要先運行'sudo apt-get install tasksel'。 – TRiG 2012-01-07 22:08:02