Zend Framework 2的核心代碼和項目代碼放在一起是件好事嗎

來源:互聯網
上載者:User

對於剛剛在php培訓學校畢業只接觸半年多的我來說至今玩過thinkphp CI Yii 以及ZF1發現它們的核心代碼是和項目代碼分離的,也就是說放在兩個主目錄下。甚至可以把核心代碼放在根目錄下來運行項目以提升安全機制!我想落落的問一句,ZF2的核心代碼和項目代碼放在一起是件好事嗎?

說明:

thinkphp:使用include(路徑)引入入口檔案。

CI:下載的源碼就是application和system分離的,以後都在application做開發。

Yii:命令列->yiic webapp (路徑)(項目名稱)隨意將核心代碼放哪,只要指定路徑到伺服器目錄下就好了。

ZF1:命令列->zf create project (路徑)(項目名稱)和Yii一樣

可是ZF2的核心代碼是一定要放在ZendSkeletonApplication-master\vendor\ZF2目錄下才可以正常運行(也就是項目目錄下)。

已嘗試php.ini下的include_path:(ZF2核心代碼路徑)來安裝ZF2。

但不起作用同樣報錯!

此提問源自http://avnpc.com/pages/zend-framework-2-installation-for-windows作為參考!

回複內容:

對於剛剛在php培訓學校畢業只接觸半年多的我來說至今玩過thinkphp CI Yii 以及ZF1發現它們的核心代碼是和項目代碼分離的,也就是說放在兩個主目錄下。甚至可以把核心代碼放在根目錄下來運行項目以提升安全機制!我想落落的問一句,ZF2的核心代碼和項目代碼放在一起是件好事嗎?

說明:

thinkphp:使用include(路徑)引入入口檔案。

CI:下載的源碼就是application和system分離的,以後都在application做開發。

Yii:命令列->yiic webapp (路徑)(項目名稱)隨意將核心代碼放哪,只要指定路徑到伺服器目錄下就好了。

ZF1:命令列->zf create project (路徑)(項目名稱)和Yii一樣

可是ZF2的核心代碼是一定要放在ZendSkeletonApplication-master\vendor\ZF2目錄下才可以正常運行(也就是項目目錄下)。

已嘗試php.ini下的include_path:(ZF2核心代碼路徑)來安裝ZF2。

但不起作用同樣報錯!

此提問源自http://avnpc.com/pages/zend-framework-2-installation-for-windows作為參考!

謝謝邀請,題主引用的教程是我寫的,教程的目的是在最短的時間內搭建出環境,很多細節並沒有提及,所以應該在運行出Hello world之後再詳細的閱讀一下ZF的官方文檔及教程,才能獲得更完整的資訊。

在ZendSkeletonApplication的項目首頁其實就已經對ZF2項目的安裝方法進行了說明,ZF2項目推薦使用兩種方式安裝:

一、 使用Composer

git clone git://github.com/zendframework/ZendSkeletonApplication.gitcd ZendSkeletonApplicationphp composer.phar self-updatephp composer.phar install

二、使用GIT

git clone git://github.com/zendframework/ZendSkeletonApplication.git --recursive

無論採用哪種方式安裝,最終在項目中ZF2的核心代碼是通過GIT Submodule被引用的,並不會和項目代碼混雜在一起,因此你的ZF2項目的程式碼程式庫中不會包含臃腫的ZF2核心代碼,只有開發或生產環境運行安裝時才會下載這些代碼。

而關於安全性問題,最終Web伺服器綁定的目錄是public,而ZF2的專案檔和核心代碼目錄是在此檔案夾之外的,因此使用者訪問時沒有許可權訪問public以外的檔案,也就不存在安全性問題。

你如果限制了http服務的許可權在/public,架構庫在/vendor或者別的路徑是沒區別的

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.