[Laravel] PHP Laravel 環境安裝(使用Homestead)
本文使用 Mac OS X EI Capitan 10.11.6
前言
好久沒有寫PHP了,最近發現laravel竟然內建Vuejs,因此手癢想來看看laravel搭配Vue的架構是怎麼設計的。
安裝項目
首先,講一下安裝的順序 因為不想干擾到我目前系統的環境,我這邊選擇使用Homestead來安裝。 但是基本的指令如PHP、Composer、Laravel是在本機操作的,還是會安裝。
- 指令好朋友
- PHP - 這不用多說了
- Composer - php套件及相依性工具,相當於node的npm、ruby的bundler
- Laravel - php Framework 這也不用多說
- 虛擬機
- VirtualBox - 虛擬機
- Vagrant - 使用指令執行虛擬機的工具,搭配box可以簡易的建立一個虛擬環境
- Homestead - 為了laravel環境特別建立的vagrant box
開始安裝
- php
先查看目前php版本
$ php -v
注意版本要安裝至少5.6以上,否則會無法 composer install
如果要安裝,可以直接使用homebrew來安裝(這邊使用php7.0版)
$ brew install homebrew/php/php70
預設ini位置
/usr/local/etc/php/7.0/php.ini
- Composer
只要把以下四行剪下來執行
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === 'e115a8dc7871f15d853148a7fbac7da27d6c0030b848d9b3dc09e2a0388afed865e6a3d6b3c0fad45c48e2b5fc1196ae') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
執行後會發現多了一個composer.phar檔案,再執行以下指令,就可以在全域使用composer指令了 (注意:此指令資料夾可能需要最高權限,必要時請使用sudo來執行)
mv composer.phar /usr/local/bin/composer
- Laravel
執行以下指令安裝
composer global require "laravel/installer"
安裝完成後會在~/.composer/vendor/bin中多了laravel的指令 這時候需要把這個資料夾加入預設的path中,才能讓laravel變成全域指令
因為我有安裝oh-my-zsh所以我打開~/.zshrc來編輯 (如果你是原始的可能要開~/.bashrc)
- export PATH=$HOME/bin:/usr/local/bin:$PATH
+ export PATH=$HOME/bin:$HOME/.composer/vendor/bin:/usr/local/bin:$PATH
加完重開console就可以預設載入laravel 這時候在任何資料夾輸入
$ laravel new YOUR_PROJECT_NAME
就可以新增一個laravel專案了
不過這邊先不新增,我們還要繼續安裝vagrant
-
VirtaulBox https://www.virtualbox.org/wiki/Downloads 下載dmg來安裝即可
-
Vagrant https://www.vagrantup.com/downloads.html 下載dmg來安裝即可
-
Homestead 先新增homestead box到vagrant box list中 (就是下載映像檔到電腦)
$ vagrant box add laravel/homestead
然後直接clone homestead到 ~/Homestead
$ cd ~
$ git clone https://github.com/laravel/homestead.git Homestead
這時候先到 ~/Homestead
目錄,執行 init.sh
$ cd ~/Homestead
$ bash init.sh
他會產生 ~/.homestead/homestead.yaml
這個設定檔
如有需要可以自行設定
這邊使用預設值,所以需要在家目錄多建立一個Code的資料夾(之後的專案都放在這) 並建立一個測試用的專案”Laravel”
$ mkdir ~/Code
$ laravel new Laravel
每次要開啟Homestead時,先到homestead目錄執行vagrant up
$ cd ~/Homestead
$ vagrant up
首次開啟需要把專案目錄中的 .env.example
改為 ‘.env’
並至專案目錄輸入以下指令產生APP_KEY
$ cd ~/Code/Laravel
$ php artisan key:generate
另外在homestead.yaml設定檔裡面,其實有設定vm的對外IP是192.168.10.10 並且對應到專案的public目錄 因此可以直接透過 http://192.168.10.10/ 開啟網頁(如有顯示Laravel就算成功了)
如果不想使用app連,可以設定 /etc/hosts
加入
192.168.10.10 homestead.app
就可以透過 http://homestead.app 開啟網頁
參考
留言