* * * * *
[TOC]
## 安裝
> {video} 你是一個喜歡看視頻的學習者么? Laracasts 為剛剛使用這個框架的新手們提供了一個?[免費、深入的 Laravel視頻](https://laracasts.com/series/laravel-from-scratch-2017)?。這是一個開始你學習之途的好地方。
### 服務器要求
Laravel 框架會有一些系統上的要求。當然,這些要求在?[Laravel Homestead](Homestead.md)?虛擬機上都已經完全配置好了。所以,非常推薦你使用 Homestead 作為你的本地 Laravel 開發環境。
然而,如果你沒有使用 Homestead ,你需要確保你的服務器上安裝了下面的幾個拓展:
* PHP >= 5.6.4
* OpenSSL PHP Extension
* PDO PHP Extension
* Mbstring PHP Extension
* Tokenizer PHP Extension
* XML PHP Extension
> 譯者注:強烈推薦使用 Homestead 作為開發環境,尤其是新手,可以避免很多不必要的麻煩。線上環境可以參考?[Homestead 的環境部署腳本](https://github.com/laravel/settler/blob/master/scripts/provision.sh)?進行部署。
### 安裝 Laravel
Laravel 使用?[Composer](https://getcomposer.org/)?來管理代碼依賴。所以,在使用 Laravel 之前,請先確認你的電腦上安裝了 Composer。
#### 通過 Laravel 安裝工具
首先,使用 Composer 下載 Laravel 安裝包:
~~~
composer global require "laravel/installer"
~~~
請確定你已將?`~/.composer/vendor/bin`?路徑加到 PATH,只有這樣系統才能找到?`laravel`?的執行文件。
一旦安裝完成,就可以使用?`laravel new`?命令在指定目錄創建一個新的 Laravel 項目,例如:`laravel new blog`?將會在當前目錄下創建一個叫?`blog`?的目錄,此目錄里面存放著新安裝的 Laravel 和代碼依賴。這個方法的安裝速度比通過 Composer 安裝要快上許多:
~~~
laravel new blog
~~~
因為代碼依賴是直接一起打包安裝的。
#### 通過 Composer Create-Project
除此之外,你也可以通過 Composer 在命令行運行?`create-project`?命令來安裝 Laravel:
~~~
composer create-project --prefer-dist laravel/laravel blog
~~~
#### 本地開發服務器
如果你在本地安裝了 PHP,你可能希望像運行 PHP 內置的開發服務器一樣來訪問自己的應用程序,你可以使用?`serve`Artisan 命令來啟動一個本地開發服務器,這樣你就可以在?`http://localhost:8000`?來訪問它。
~~~
php artisan serve
~~~
不過有更健壯的本地開發選項可用,比如?[Homestead](Homestead.md)?和?[Valet](Valet.md)。
### 配置
#### 入口目錄
在安裝 Laravel 之后,你需要配置你的 Web 服務器的根目錄為?`public`?目錄。 這個目錄的?`index.php`?文件作為所有 HTTP 請求進入應用的前端處理器。
#### 配置文件
Laravel 框架所有的配置文件都存放在?`config`?目錄下。每個選項都被加入文檔,所以你可以自由的瀏覽文件,輕松的熟悉你的選項。
#### 目錄權限
安裝 Laravel 之后, 你需要配置一些權限 。?`storage`?和?`bootstrap/cache`?目錄應該允許你的 Web 服務器寫入,否則 Laravel 將無法寫入。如果你使用?[Homestead](Homestead.md)?虛擬機,這些權限應該已經被設置好了。
#### 應用程序密鑰
在你安裝完 Laravel 后,首先需要做的事情是設置一個隨機字符串的密鑰。假設你是通過 Composer 或是 Laravel 安裝工具安裝的 Laravel,那么這個密鑰已經通過?`key:generate`?命令幫你設置完成。
通常這個密鑰會有 32 字符長。這個密鑰可以被設置在 .env 環境文件中。如果你還沒將 .env.example 文件重命名為 .env,那么你現在應該去設置下。**如果你沒有設置應用程序密鑰,你的用戶 Session 和 其他加密數據將不安全!**
#### 額外配置
Laravel 幾乎不需做任何其它設置就可以馬上使用,但是建議你先瀏覽?`config/app.php`?文件和對應的文檔,這里面包含著一些選項,如?`時區`?和?`語言環境`,你可以根據應用程序的情況來修改。
你也可以設置 Laravel 的幾個附加組件,像是:
* [緩存](緩存系統.md)
* [數據庫](快速入門.md)
* [Session](Session.md)
一旦 Laravel 安裝完成,你應該立即?[設置本機環境](安裝.md)。
## Web 服務器配置
### 優雅鏈接
#### Apache
Laravel 框架通過?`public/.htaccess`?文件來讓 URL 不需要?`index.php`?即可訪問。在 Apache 啟用 Laravel 之前,請確認是否有開啟 mod_rewrite 模塊,以便?`.htaccess`?文件發揮作用。
如果 Laravel 附帶的 .htaccess 文件在 Apache 中無法使用的話,請嘗試下方的做法:
~~~
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
~~~
#### Nginx
如果你使用 Nginx ,在你的網站配置中加入下述代碼將會轉發所有的請求到?`index.php`?前端控制器。
~~~
location / {
try_files $uri $uri/ /index.php?$query_string;
}
~~~
當然如果你使用了?[Homestead](Homestead.md)?或者?[Valet](Valet.md)?的話, 它會自動的幫你設置好優雅鏈接。
* * *
- 前言
- 翻譯說明
- 發行說明
- 升級說明
- 貢獻導引
- 入門指南
- 安裝
- 配置信息
- 文件夾結構
- 請求周期
- 開發環境部署
- Homestead
- Valet
- 核心概念
- 服務容器
- 服務提供者
- Facades
- Contracts
- HTTP層
- 路由
- 中間件
- CSRF 保護
- 控制器
- 請求
- 響應
- 視圖
- Session
- 表單驗證
- 前端
- Blade 模板
- 本地化
- 前端指南
- 編輯資源 Mix
- 安全
- 用戶認證
- Passport OAuth 認證
- 用戶授權
- 加密解密
- 哈希
- 重置密碼
- 綜合話題
- Artisan 命令行
- 廣播系統
- 緩存系統
- 集合
- 錯誤與日志
- 事件系統
- 文件存儲
- 輔助函數
- 郵件發送
- 消息通知
- 擴展包開發
- 隊列
- 任務調度
- 數據庫
- 快速入門
- 查詢構造器
- 分頁
- 數據庫遷移
- 數據填充
- Redis
- Eloquent ORM
- 快速入門
- 模型關聯
- Eloquent 集合
- 修改器
- 序列化
- 測試
- 快速入門
- HTTP 測試
- 瀏覽器測試 Dusk
- 數據庫測試
- 測試模擬器
- 官方擴展包
- Cashier 交易工具包
- Envoy 部署工具
- Scout 全文搜索
- Socialite 社會化登錄