2010-02-11 41 views
1

我有多個網站所有正在運行的關閉笨的我的服務器(單獨的應用程序目錄和一個單一的系統目錄)在一個單一的安裝。這一直是令人難以置信的,我沒有看到任何理由在這一點上改變它。笨共享資源 - 誠徵意見

如果我發現一個錯誤或提高效率,我發現我自己編寫庫類以延長/覆蓋CI所有時間和次數我必須返回多個網站才能進行相同的調整以避免打印錯誤其中一個網站。因此,它需要我更改每個文件,然後測試該網站的錯誤。

我一直在思考的中心位置使用單個庫目錄和符號鏈接所有我的網站的到中央目錄的解決方案。然後,當我更改文件時,它會立即傳播到所有下游網站。它仍然會要求我測試每個錯誤,但我不必多次進行更改。任何特定於單個網站的內容都將是一個非共享文件(仍然在鏈接的目錄中,而不是在其他地方使用),或者可以放在本地幫助程序中。

而且,我一直在單獨的「系統」目錄由CI的版本,所以我可以遷移我的網站獨立如有必要 - 這個中心庫文件將被連接到一個特定的版本,以減少可能斷裂。

有誰看到潛在的問題或隱患不採取這種方法?有沒有人在我應該考慮的另一個方向上做到這一點?

在此先感謝!

回答

3

我認爲這實際上是有道理的:]爲它去。即使在官方的CodeIgniter頁面上,他們也提到這是可能的。

此外,我沒有看到一個原因,爲什麼應該有任何問題。

編輯:他們接觸的多個站點的問題就在這裏:http://codeigniter.com/user_guide/general/managing_apps.html

也:

http://codeigniter.com/wiki/Multiple_Applications/
http://www.exclusivetutorials.com/setting-multiple-websites-in-codeigniter-installation/
How to Handle Multiple Projects in CodeIgniter?
http://codeigniter.com/forums/viewthread/56436/

2

我有我的CI應用單一的系統目錄和單獨的應用程序目錄。爲了在我的應用程序之間共享庫和一些視圖模板,我創建了一個「Common」目錄,與CI系統位於同一文件夾中,並具有與常規應用程序文件夾相同的結構,並使用了符號鏈接,但是您可以修改Loader類,以便它也在Common文件夾中查找。我的設置看起來像這樣:

/var/CodeIgniter/ 
/var/Common/ 
/var/Common/config/ 
/var/Common/controllers/ 
... 
/var/Common/libraries/ 
... 
/var/www/someapp/ 
/var/www/someotherapp/ 
... 
+0

不要修改Loader類,擴展它。 – Madbreaks 2012-08-21 21:31:42

1

我不知道你如何處理髮布您的網站(假設你實際上做任何的那個),但我想看看到版本控制。例如,在SVN中,你可以在另一個svn目錄(或文件)外部創建,然後更新抓取外部文件的當前svn目錄。這種方法從其他方面獲得了一個好處,那就是當您修改公用庫時,其他方面不會立即受到影響。這可以防止在您有時間使用公共庫來測試所有網站之前發生不必要的中斷。只要您準備好測試更改,您就可以更新每個網站的文件夾。這是「更多工作」,但它可以防止代碼重複和不必要的中斷。

+0

@ocdcoder - 我實際上使用SVN(考慮在不久的將來嘗試GIT)。即使只有幾個網站,我發現有版本控制是非常有幫助的。感謝ocdcoder的建議。 – Shane 2010-02-19 15:49:30