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.创建laravel项目
安装composercurl -sS https://getcomposer.org/installer | php
mac下 mv composer.phar /usr/local/bin/composer
创建项目 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" 中加入自己想用的依赖包
在控制台执行 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.添加一些服务
首先创建service文件夹 把功能写成可以复用的服务
然后在providers中绑定服务 并设置门面名称 在confing app.php 注册服务提供者
最后创建类继承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.系统守护进程 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
#脚本执行命令
command=/usr/bin/python /opt/bin/test.py
#supervisor启动的时候是否随着同时启动,默认True
autostart=true
#当程序exit的时候,这个program不会自动重启,默认unexpected
#设置子进程挂掉后自动重启的情况,有三个选项,false,unexpected和true。如果为false的时候,无论什么情况下,都不会被重新启动,如果为unexpected,只有当进程的退出码不在下面的exitcodes里面定义的
autorestart=false
#这个选项是子进程启动多少秒之后,此时状态如果是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 日志文件备份数
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/数据库名 -u 用户名 -p 密码
MongoDB数据导出
mongoexport -h 127.0.0.1 --port 27017 -u 用户名 -p 密码 -d 数据库名 -c 集合名 --csv --out /data/out.csv
MongoDB数据导入
mongoimport -h 127.0.0.1 --port 27017 -u 用户名 -p 密码 -d 数据库名 -c 集合名 --type csv --headerline -f 字段名(用逗号分割) --file /data/1.csv
控制台连接Redis客户端
redis-cli -h 127.0.0.1 -p 6389
网友评论