環境:
php7.0 + mysql5.7 + apache2.4
總體流程
安裝了lamp環境後,在安裝laravel環境將會特別簡單,只需要一個composer組件管理工具就可以了。
安裝composer
php -r "copy('https://getcomposer.org/installer','composer-setup.php');"
此命令將會把composer的安裝腳本下載到當前目錄。
php composer-setup.php
直接安裝composer,將會在當前目錄下生成一個composer.phar
php -r "unlink('composer-setup.php');"
將會刪除此安裝包。
我們要使用的工具就是這個composer.phar。
爲了讓其全局生效,我們將這個文件移動到全局目錄下
sudo mv composer.phar /usr/local/bin/composer
我們甚至將其後綴去掉,方便我們以後使用。
下載項目
我們可以使用命令
composer create-project laravel/laravel projectName
在當前目錄下創建項目。
坑之一:composer不能夠使用root權限使用,所以你必須用普通用戶權限,這時,你創建項目的當前目錄,一定要有給普通用戶讀寫的權限。
能夠用到的命令:
chmod [-R] 777 ./
這是更當前目錄權限的命令,777是全部權限,請謹慎設置。-R選項是循環目錄下所有文件一同設置777的權限。
命令敲下後,稍微等待一會兒,當前目錄下就會出現一個projectName的文件夾,這就是你的項目啦。下一步就是配置服務器。
配置服務器
使用php5.4以後自帶的服務。
進入projectName/public文件夾,這是項目的入口目錄,其中有一個index.php,這是項目入口文件。
我們在這個目錄下敲下命令:php -S localhost:10086 (端口號)
這樣就可以了。
使用apache2.4
使用apache2.4服務來做會有很多讓人意想不到的問題,首先我們進入apache2的配置目錄中cd /etc/apache2/
打開ports文件添加一句:Listen 8011
其中8011是端口號,可以填寫1024到60000之間任意一個數值。
這樣我們就監聽了8011端口。接着給8011端口分配一臺虛擬主機
進入文件夾sites-available中,將000-default.conf這個文件複製一份,修改稱自己虛擬主機的名字,然後打開修改內容。<VirtualHost *:8011> ServerAdmin webmaster@localhost DocumentRoot /var/www/laravel/blog/public ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined </VirtualHost> <Directory /var/www/laravel/blog/public> Options Indexes FollowSymLinks AllowOverride all Require all granted </Directory>
然後保存,至關重要的一點。sites-available文件夾是用來保存虛擬主機配置的,但是apache2服務器不會檢測此文件夾,apache2服務器檢測的文件夾是sites-enabled文件夾,所以將新配置文件生成一個到sites-enable目錄下的軟連接。
sudo ln -s yourfilename.conf ../sites-enabled/yourfilename.conf
坑之二:
一定要使用sudo的命令,否則你的軟連接不會生效其中有幾個要關注的點。
- DocumentRoot 後面的字段要填寫自己項目所在目錄。
- Directory 後面的字段同DocumentRoot
- 注意ErrorLog錯誤日誌的目錄爲 /var/log/
檢查你的rewrite功能是否開啓,回到apache2的目錄,進入conf-available目錄中,找到rewrite.load文件,打開刪掉#
最後重新啓動以下apache2服務即可sudo service apache2 restart
項目的修改
如果這個時候你訪問到了laravel的歡迎界面,那麼真是皆大歡喜,但是如果到現在爲止你的歡迎界面出不來,就做好慢慢的入坑之旅,這中間的過程會將你百般折磨,堅挺住,勝利就在眼前!
如果網頁給出的錯誤是error 500請嘗試以下幾步。
- 給項目中的目錄最高權限
chmod -R 777 storage
chmod -R 777 bootstrap/cache
如果問題無法解決,請查看/var/log/error.log文件到最底部,如果錯誤是:
請嘗試更新項目
composer update
一般更新結束,就能夠運行了,否則請google,或者貼錯誤到評論,我們一起努力解決……