?相信你們看其他網(wǎng)站的時候,安裝過程有很多錯誤吧誊薄,我也踩了很多的坑玲献,現(xiàn)在我就總結(jié)一下一下最重要的幾條吧。
為了方便流程還是走一下吧暂衡。
一:準(zhǔn)備
測試環(huán)境:CentOS7.6+寶塔6.9.8+Nginx1.15+MySql5.6+PHP7.2 + phpMyAdmin 4.7
域名綁定:需要解析一個域名到你的服務(wù)器IP。
github:https://github.com/hui-ho/WebStack-Laravel
git:git clone https://github.com/hui-ho/WebStack-Laravel.git崖瞭;
二:刪除和換源
2.1刪除禁用函數(shù)
我們需要刪除禁用函數(shù):proc_open狂巢、passthru、putenv书聚,如果你不刪除函數(shù)唧领,安裝時候會報錯藻雌;
2.2更換composer源
為了避免安裝時候出現(xiàn)認(rèn)證信息,可以換個華為源斩个。如果你沒有刪除禁用函數(shù)胯杭,那么換源的時候也是問題多多:所以所,我們在換源前受啥,必須要禁用函數(shù)刪除掉做个。
composer config -g repo.packagist composer https://mirrors.huaweicloud.com/repository/php;? ? ? ??? ? ? ?
3.前面的工作都做好之后滚局,我們就可以安心的安裝WebStack-Laravel了居暖。官方給的安裝命令如下:
#克隆代碼
git clone https://github.com/hui-ho/WebStack-Laravel.git
#安裝依賴
cd WebStack-Laravel
rm -rf composer.lock
composer install
#編輯配置
cp .env.example .env
nano .env? //也可以用vim進(jìn)行編譯?
來了來了,重點了來藤肢,相信你們執(zhí)行到composer install的時候就報錯了吧太闺,很懵逼吧,廢話不多說這是因為carbon版本太低導(dǎo)致的在WebStack-Laravel文件夾下找到composer.json文件在require里面添加
"kylekatarnls/laravel-carbon-2": "^1.0.0",
"nesbot/carbon": "2.0.0-beta.2 as 1.25.0"
這兩個保存嘁圈,重新執(zhí)行省骂,然后沒問題了。我們在用nano編輯配置文件的時候最住,如果遇到nano沒有安裝的錯誤:-bash: nano: command not found
我們可以使用命令:yum install nano來安裝解決钞澳,如果遇到詢問,直接yes即可
3.1修改相關(guān)信息
APP_NAME=WebStack
APP_ENV=local(這里如果正式運行涨缚,請修改為:production)
APP_KEY=
APP_DEBUG=true(如果安裝沒問題略贮,建議改為false)
APP_LOG_LEVEL=debug
APP_URL=http://localhost(這里修改你自己的域名地址)
#數(shù)據(jù)庫信息
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=daniao
DB_USERNAME=daniao
DB_PASSWORD=daniao
其它的參數(shù)自行改吧,或者直接默認(rèn)仗岖,再使用命令:
#生成KEY
php artisan key:generate
#遷移數(shù)據(jù)逃延,對于有提示的,輸入yes即可
php artisan migrate:refresh --seed
來了來了轧拄,重點又來了揽祥,相信你們走到這一步的時候,又報了一堆錯吧檩电,這是因為mysql5.7以下導(dǎo)致的問題拄丰,但是官網(wǎng)給出的就是imysql5.6這我也很無奈,來來俐末,要么升級msql料按,要么在 AppServiceProvider.php 文件里的 boot 方法里設(shè)置一個默認(rèn)值:
文件路徑: /app/providers/AppServiceProvider.php,把下面復(fù)制粘貼即可
<?phpnamespaceApp\Providers;useApp\Observers\SiteObserver;useApp\Site;useEncore\Admin\Config\Config;useIlluminate\Support\Facades\Schema;useIlluminate\Support\ServiceProvider;classAppServiceProviderextendsServiceProvider{/**? ? ?* Bootstrap any application services.? ? ?*? ? ?*@returnvoid? ? ?*/publicfunctionboot(){? ? ?? ?Schema::defaultStringLength(191);? ? ? ? Site::observe(SiteObserver::class);? ? ? ? $table = config('admin.extensions.config.table','admin_config');if(Schema::hasTable($table)) {? ? ? ? ? ? Config::load();? ? ? ? }? ? }/**? ? ?* Register any application services.? ? ?*? ? ?*@returnvoid? ? ?*/publicfunctionregister(){//}}
<?phpnamespaceApp\Providers;useApp\Observers\SiteObserver;useApp\Site;useEncore\Admin\Config\Config;useIlluminate\Support\Facades\Schema;useIlluminate\Support\ServiceProvider;classAppServiceProviderextendsServiceProvider{/**? ? ?* Bootstrap any application services.? ? ?*? ? ?*@returnvoid? ? ?*/publicfunctionboot(){? ? ?? ?Schema::defaultStringLength(191);? ? ? ? Site::observe(SiteObserver::class);? ? ? ? $table = config('admin.extensions.config.table','admin_config');if(Schema::hasTable($table)) {? ? ? ? ? ? Config::load();? ? ? ? }? ? }/**? ? ?* Register any application services.? ? ?*? ? ?*@returnvoid? ? ?*/publicfunctionregister(){//}}
然后重新執(zhí)行:
#生成KEY
php artisan key:generate
#遷移數(shù)據(jù)卓箫,對于有提示的载矿,輸入yes即可
php artisan migrate:refresh --seed? ?
哈哈看到?jīng)]錯誤是不是很激動,繼續(xù)往下走吧
3.2新建Systemd配置文件
新建Systemd配置文件烹卒,命令如下:
#修改下WebStack-Laravel源碼路徑即可闷盔,然后一起復(fù)制到SSH運行
cat > /etc/systemd/system/wl.service <<EOF
[Unit]
Description=WebStack-Laravel
After=network.target
Wants=network.target
[Service]
Type=simple
PIDFile=/var/run/wl.pid
WorkingDirectory=/root/WebStack-Laravel
ExecStart=$(command -v php) artisan serve
RestartPreventExitStatus=23
Restart=always
[Install]
WantedBy=multi-user.target
EOF
啟動并開機自啟:
systemctl start wl
systemctl enable wl
然后訪問地址為http://127.0.0.1:8000弯洗,接下來再使用反向代理。額逢勾,默認(rèn)的端口是8000牡整,如果你需要修改,可以用啟動命令+端口號的形式來修改溺拱,命令如下:
#監(jiān)聽8888端口逃贝,訪問地址http://127.0.0.1:8888
php artisan serve --port=8888
#如果你想直接使用ip:8888訪問
php artisan serve --host=0.0.0.0 --port=8888
3.4配置APP_ENV、REDIS和SMTP
前面的工作都做完之后迫摔,可以用http://127.0.0.1:8000來訪問了秋泳,但是訪問之前還是先設(shè)置下別的細(xì)節(jié)。
APP_ENV=production (原本是local如果正式運行攒菠,請修改為:production)
REDIS_HOST=127.0.0.1(redis緩存根據(jù)需要自行修改)
REDIS_PASSWORD=null
REDIS_PORT=6379
MAIL_DRIVER=smtp (smtp根據(jù)需要自行修改)
MAIL_HOST=smtp.mailtrap.io
MAIL_PORT=2525
MAIL_USERNAME=null
MAIL_PASSWORD=null
四:配置域名
前面的都設(shè)置好之后,可以配置域名了歉闰,因為域名之前大鳥已經(jīng)A解析了辖众,所以直接反代就可以了,寶塔面板的反代大鳥說的都已經(jīng)不想在說了和敬。反代之前先新建一個網(wǎng)站凹炸,之后設(shè)置網(wǎng)站→反向代理,配置即可昼弟。
至于設(shè)置SSL的問題啤它,寶塔可以這樣搞,你在飯袋之前就申請好證書舱痘,然后飯袋就可以了变骡,或者先停掉,然后申請證書芭逝,然后設(shè)置飯袋塌碌。這個自己去搞吧。寶塔來做這些是很容易的旬盯。
五:后臺管理
簡單的設(shè)置下后臺台妆,后臺地址:http://domain.com/admin用戶名和密碼均為admin、admin胖翰。
其他的都無所謂啦接剩,哈哈,completeH取0萌薄!E嗨桐汤!