Laravel部署到阿里雲CentOS/Debian

敲鍵盤的貓發表於2019-02-16

噹噹噹當!!今天的部落格,全程高能,乃是我斷斷續續折騰N天的成果,請趕快跟我上車吧!


本文只適合小團隊開發,請不要輕易用於線上環境。


今天要說的內容是:如何在阿里雲CentOS或Debian上無論如何都能成功部署Laravel環境。
CentOS版本7.2
Laravel版本5.4.x
PHP版本7.1.x

第一步:安裝lnmp一鍵包

wget -c http://soft.vpser.net/lnmp/lnmp1.4.tar.gz && tar zxf lnmp1.4.tar.gz && cd lnmp1.4 && ./install.sh lnmp
ps:為方便後續開發,強烈推薦將lnmp直接下載到伺服器中
wget http://soft.vpser.net/lnmp/lnmp1.4-full.tar.gz
速度簡直超級快。
下載後解壓,然後./install.sh按步驟操作即可,最低配的伺服器大概需要30分鐘。
./uninstall.sh可以完整解除安裝,重灌前建議先解除安裝。

第二步:安裝php-mysql驅動

apt-get install php5-mysql或者php7.1-mysql
(以上如果遇到沒有驅動的錯誤,可以安裝)

第三步:rsync同步程式碼到伺服器

略(新裝的機器可能沒有rsync,yum一下即可)

第四步:安裝資料庫

mysql -u root -p進入資料庫,然後create database xxx;建立一個資料庫。
php artisan migrate:refresh --seed

第五步:開啟伺服器到外網

php artisan serve --host=0.0.0.0 --port=8000
如果要用80埠,請先關閉nginx:lnmp nginx stop

相關環境

安裝composer:
curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer
安裝node:
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash - for Debian
curl -sL https://rpm.nodesource.com/setup_8.x | bash - for CentOS

真正的乾貨

PHP擴充套件乃是我多年的心病,這下終於有了完美解決的辦法。
以Imagick擴充套件為例

PHP官方擴充套件都放在lnmp-full包中,需要進入資料夾,然後將你所安裝的版本的PHP壓縮包解壓tar -jxvf解壓tar.bz2,tar -xvf解壓tar.zx。解壓之後,進入ext資料夾,然後進入需要的擴充套件的資料夾中,執行

/usr/local/php/bin/phpize
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install

非官方庫需要去網上下載,比如imagick。
開啟官網,wget下載壓縮包到伺服器,tar -zvf解壓,然後再執行上述步驟。

vim /usr/local/php/etc/php.ini
phpize是專門用來安裝擴充套件的工具。編譯完成的擴充套件,已經被自動放在當前目錄下,當前目錄也自動被加入path中了,只需要在php.ini中新增一行extension = "xxx.so"。最後執行/etc/init.d/php-fpm restart重啟。
如果實在閒的蛋疼,或者怕不小心刪掉lnmp完整包,還是強烈推薦將編譯出來的so檔案放到PHP預設的擴充套件資料夾中。

安裝ImageMagick庫

yum install ImageMagick -y這個庫用來支援imagick擴充套件,幫助PHP處理圖片
yum install ImageMagick-devel安裝開發標頭檔案

相關文章