2011-06-07 63 views
0

我已決定使用OOP和PHP框架開始編碼。我已經在開發服務器上成功安裝了Yii並創建了一個webapp。現在,我想將受保護的文件夾移到文檔根目錄之外的級別,這是出於安全原因。我的問題是如何做到這一點,當有多個子域,我也將使用Yii。如何爲多個子域設置Yii,以便受保護的文件夾位於每個子域的文檔根目錄之外

我有PHP的經驗,但沒有OOP風格,這是我進入OOP和框架的第一步。另外,我在Ubuntu上安裝了一個用於開發的LAMP系統。

我的路徑結構如下,它與生產服務器匹配。我有頂級網站和多個其他頂級網站和子域網站供其中一個頂級網站使用。

頂級站點 - /家/標記/的public_html/{網站一個文件}
頂級網站 - /home/mark/public_html/website-two.com/{website-two文件}
頂級網站 - /home/mark/public_html/website-three.com/{website-three files}
我的子域 - /home/mark/public_html/sub1.website-three.com/{sub文件}
我的子域 - /home/mark/public_html/sub2.website-three.com/{sub2文件}
我的子域 - /home/mark/public_html/sub3.website-three.com/{sub3文件}

我有Y. ii安裝在:/ home/mark/Yii

我已經在/home/mark/public_html/sub1.website-three.com上創建了一個webapp並在本地訪問Yii webapp http://sub1.website-three/ ....我不'由於我有虛擬主機和子域,因此請使用http://localhost。所有這些工作,並將在網站三下的其他子域名上創建更多webapps。

我可以將受保護的文件夾重命名爲sub_protected並將它放在/ home/mark處,然後爲我的下一個webapp命名受保護的文件夾sub2_protected等?我應該使用不同的路徑結構嗎?另外,我相信我需要編輯每個站點的protected/config/main.php以反映更改?

任何援助將不勝感激。迫不及待地配置好了,所以我可以進一步深入Yii ......看起來非常有趣。

回答

2

來看待您可以命名任何你想要保護的文件夾,並把它放在你的文件的任何地方系統,您的網絡服務器用戶可以訪問,所以,是/ home/mark/sub * n * _protected方案將起作用。

但是,特別是如果您的站點相似並且有任何共享代碼,則使用一個受保護的文件夾並在您的主配置文件中設置一個urlManager規則數組,並在主機上加載適當的規則可能會更有效名稱。然後您可以爲每個主機以及視圖目錄設置專用控制器。我經常爲移動版本做到這一點,您也可以將移動檢測添加到組合中。

如果這些網站是不同的,那麼使用單獨的受保護的目錄也可能會感覺不到。例如,我將爲基於Gii生成的腳手架的管理工具使用單獨的受保護目錄。

如果網站非常相似,你可能也想看看主題: http://www.yiiframework.com/doc/guide/1.1/en/topics.theming

+0

謝謝,我確實得到了受保護的文件夾被移動並重新命名,但現在想着你說的話。這些網站是非常相似的......相同的數據結構,相同的佈局,只是不同的名稱和不同的顏色/圖像等,如果我可以讓他們都共享相同的受保護的文件夾,然後使用主題,這聽起來像要走的路。怎麼樣分享相同的分貝?這是否添加任何問題共享受保護的文件夾或主題? – Mark 2011-06-07 23:44:21

+0

不,我沒有看到共享相同數據庫的任何問題。如果由於某種原因你不想這樣做,你可以使用上述相同的技術爲urlManager加載不同的規則並加載不同的數據庫設置,甚至爲不同的站點/主機使用不同的表前綴。 – ldg 2011-06-08 03:51:27

1

當然,您可以將受保護的文件夾放在文檔根目錄下。 只需使用網站一個下一個代碼在你的配置:

return array(
    'basePath'=>dirname(__FILE__).DIRECTORY_SEPARATOR.'..'.DIRECTORY_SEPARATOR.'..', 

和你protected文件夾將在

/home/mark/protected 
+0

謝謝,我的確得到了保護文件夾移動和重命名和配置變更爲代表的變化。所有的工作......但現在想到的主題和分貝,以及處理這些問題的最佳方式。此頁面也幫助... http://www.yiiframework.com/wiki/116/how-to-set-up-directory-structures-for-multiple-yii-project-support/ – Mark 2011-06-07 23:40:16

相關問題