當您安裝完成,就可以打開 laravel 網站的目錄來認識它的架構:
最上層目錄
最上層目錄
- app:應用程式的主目錄,包含 models, views, controllers 等等目錄,大部份時間都是在這個目錄中操作。
- bootstrap:一些環境變數設定。大部份都不需更動。但可以修改 start.php 中的 $env 變數,來依不同環境啟用不同的設定檔。
- public:唯一的公開目錄,使用者連到這個網站唯一的進入點,可以將 CSS, Javascript, 圖片等檔案放在此。
- vendor:放置 laravel 的原始碼及相依套件的程式碼,還有第三方套件的程式碼。
app 目錄及檔案
- commands:放置讓你可以在終端機使用的指令。
- config:應用程式中各種功能的設定檔。一開始要動到 app.php, database.php 兩個檔案。你可以建立不同的目錄,然後在其中加入同名的檔案來覆寫設定。例如你會有一個 local 目錄及一個 production 目錄,local 的設定是針對你的開發環境,production 的設定則是針對實際運作的伺服器。這樣你就不需因為伺服器環境和本機開發環境不同,而對設定改來改去。
- controllers:MVC 中的 controller 的程式碼檔案,你的程式碼會在這裡處理各種資料後丟給 View 來顯示。
- database:其中有兩個目錄,migrations 放置資料庫遷移檔案。seeds 放置要自動填入資料庫假資料的檔案。
- lang:多國語系資源目錄,每個子目錄對應到一個語系。
- models:MVC 中的 model,對應到資料庫資料表的模型。
- start:程式啟動時要執行的檔案。
- storage:laravel 用來暫存檔案的目錄,例如 cache, log 或 session 等,因為是給 laravel 使用的,所以你無需去動這個目錄裡的檔案。這個目錄必須設為可寫入的權限。
- tests:單元測試目錄。
- views:MVC 中的 view ,放置 HTML 網頁模版的目錄。
- filters.php:應用程式或 Route 的過濾器。
- routes.php:網址路由,指定某個網址的內容要由哪個 controller 來負責處理。
Artisan 指令說明
Artisan 是 Laravel 的指令工具,可以用來幫你處理許多雜事。進入剛才建立的網站目錄下,可以看到 artisan 這個檔案,使用方式是在終端機輸入:
php artisan 參數
例如:要啟動一個內建伺服器,可以輸入:
php artisan serve
這個伺服器會在此終端機下被建立,專屬這個專案,可以使用 Ctrl + C 來關閉。而這個伺服器預設就是顯示 public 目錄的內容,所以只要在瀏覽器上輸入
http://localhost:8000就可看到網站的頁面了。
Artisan 常用指令瀏覽
要查看有哪些命令選項可用(後面不接任何選項):php artisan
清除已編譯的類別檔:
php artisan clear-compiled
重新產生 autoload 檔,當你有新建 controller 時要使用:
php artisan dump-autoload
執行資料庫遷移檔:
php artisan migrate
退回上一次的資料庫遷移動作:
php artisan migrate:rollback
產生資料庫遷移檔:
php artisan migrate:make
清除應用程式快取:
php artisan cache:clear
使用種子建立資料庫資料:
php artisan db:seed
產生 controller 檔:
php artisan generate:controller
產生 migragtion 檔:
產生 model 檔:
php artisan generate:model
產生 view 檔:
php artisan generate:view
產生應用程式使用的金鑰:
key:generate
你好,
回覆刪除本人剛剛接觸laravel.有一些疑問. 希望能解答.
1. 請問如何在1個laravel內建立多個project. 我是能夠成功建立的, 但當http://localhost:8000時, 只開到第1個project
2. 請問如何更改default port呢? 例如我想用http://localhost/XXX就能開到我的網頁.
感謝賜教.
一個 Laravel 專案代表一個網站,如果你要有多個網站,那就要建多個 Laravel 專案,
刪除當你在一個 Laravel 專案中使用 php artisan serve 指令,
只會開啟一個暫時使用的伺服器,它直接指向該專案的 public 目錄,
所以該專案就會把 http://localhost:8000 佔用掉,
不過你可以指定 port
php artisan serve --port=8080
如果你要蓋掉 80 port,要有權限
sudo php artisan serve --port=80
建議還是裝MAMP,XAMPP什麼的比較好,
或是使用 Homestead
http://blog.tonycube.com/2016/12/laravel-homestead.html?utm_source=feedburner&utm_medium=feed&utm_campaign=Feed%3A+blogspot%2FYJzd+%28Tony+Blog%29