1. 安裝 laravel php依賴
- PHP PDO 擴展
- PHP Mbstring 擴展
- PHP Tokenizer 擴展
- PHP XML 擴展
- PHP Ctype 擴展
- PHP JSON 擴展
例如
apt-get install php7.2 php7.2-json
apt-get install php7.2 php7.2-mysql
報錯處理 The zip extension and unzip command are both missing, skipping
apt install zip unzip php7.2-zip
2.創(chuàng)建laravel項目
安裝composercurl -sS https://getcomposer.org/installer | php
mac下 mv composer.phar /usr/local/bin/composer
創(chuàng)建項目 composer create-project --prefer-dist laravel/laravel 項目名 "5.6.*"
3.提交到git倉庫
git init
git add .
git commit -m "first commit"
git remote add origin git的地址
git pull origin master
git push -u origin master
# 保存git用戶名密碼
git config --global credential.helper store
4.在nginx中添加解析
vi /etc/nginx/sites-available/default
配置好之后重啟
niginx -t
nginx -s reload
5.在dnspod中添加域名解析
6.在composer.json中的 "require" 中加入自己想用的依賴包
在控制臺執(zhí)行 composer install
或者composer update nothing
composer install
- 如有 composer.lock 文件,直接安裝,否則從 composer.json 安裝最新擴展包和依賴;
composer update
- 從 composer.json 安裝最新擴展包和依賴;
composer update vendor/package
- 從 composer.json 或者對應包的配置,并更新到最新;
composer require new/package
- 添加安裝 new/package, 可以指定版本,如: composer require new/package ~2.5.
7.添加一些服務
首先創(chuàng)建service文件夾 把功能寫成可以復用的服務
然后在providers中綁定服務 并設置門面名稱 在confing app.php 注冊服務提供者
最后創(chuàng)建類繼承Facade 返回跟providers中設置一樣的名稱
8.設置job隊列
啟動job
php /path/to/php/artisan queue:work --sleep=3 --tries=3 --daemon --queue=test
9.設置計劃任務
crontab -e
編輯計劃任務
crontab -l
展示計劃任務列表
* * * * * php /path/to/php/artisan schedule:run -q >>/path/to/log/laravel.log 2>&1
service cron restart
參考:
10.系統(tǒng)守護進程 supervisor 安裝
安裝 apt-get install supervisor
通過apt-get install安裝后,supervisor的配置文件在:
/etc/supervisor/supervisord.conf
自己需要的腳本程序編寫一個子進程配置文件,讓supervisor來管理它,放在/etc/supervisor/conf.d/目錄下,以.conf作為擴展名
apt-get install 安裝的supervisor直接可以通過 /etc/init.d/supervisor
運行:
/etc/init.d/supervisor start
寫完.conf文件需要重啟
參考:supervisor安裝配置
#項目名
[program:blog]
#腳本目錄
directory=/opt/bin
#腳本執(zhí)行命令
command=/usr/bin/python /opt/bin/test.py
#supervisor啟動的時候是否隨著同時啟動,默認True
autostart=true
#當程序exit的時候,這個program不會自動重啟,默認unexpected
#設置子進程掛掉后自動重啟的情況,有三個選項,false,unexpected和true。如果為false的時候,無論什么情況下,都不會被重新啟動,如果為unexpected,只有當進程的退出碼不在下面的exitcodes里面定義的
autorestart=false
#這個選項是子進程啟動多少秒之后,此時狀態(tài)如果是running,則我們認為啟動成功了。默認值為1
startsecs=1
#日志輸出
stderr_logfile=/tmp/blog_stderr.log
stdout_logfile=/tmp/blog_stdout.log
#腳本運行的用戶身份
user = zhoujy
#把 stderr 重定向到 stdout,默認 false
redirect_stderr = true
#stdout 日志文件大小,默認 50MB
stdout_logfile_maxbytes = 20M
#stdout 日志文件備份數(shù)
stdout_logfile_backups = 20
其他
報錯
The only supported ciphers are AES-128-CBC and AES-256-CBC with the correct key lengths.
重新生成Key
php artisan key:generate
控制臺連接MySQL
mysql -h 127.0.0.1 -P 3306 -u 用戶名 -p密碼
控制臺連接MongoDB
mongo 127.0.0.1:27017/數(shù)據(jù)庫名 -u 用戶名 -p 密碼
MongoDB數(shù)據(jù)導出
mongoexport -h 127.0.0.1 --port 27017 -u 用戶名 -p 密碼 -d 數(shù)據(jù)庫名 -c 集合名 --csv --out /data/out.csv
MongoDB數(shù)據(jù)導入
mongoimport -h 127.0.0.1 --port 27017 -u 用戶名 -p 密碼 -d 數(shù)據(jù)庫名 -c 集合名 --type csv --headerline -f 字段名(用逗號分割) --file /data/1.csv
控制臺連接Redis客戶端
redis-cli -h 127.0.0.1 -p 6389