Linux-Yii2安装

1、安装composer

// 若未安装curl扩展,yum install curl
curl -sS https://getcomposer.org/installer | php   // 下载composer.phar
mv composer.phar /usr/local/bin/composer           // 拷贝到bin目录后,以后使用就可以直接 composer

2、配置composer中国更新镜像,修改composer全局配置文件

// 查看本机composer配置参数
composer config -l -g
...
[home] /root/.config/composer   // 安装目录

// composer运行配置文件config.json
vim /root/.config/composer/config.json
{
    "config": {},
    "repositories": [
                {
                        "packagist": false
                },
                {
                        "type": "composer",
                        "url": "https://packagist.phpcomposer.com/"
                }

        ]
}

// 项目依赖关系说明文件 composer.json
composer config -e

// 修改composer的镜像地址(就是把默认的镜像地址修改成国内的)
composer config -g repo.packagist composer https://packagist.phpcomposer.com

3、更新composer

composer self-update
 
# 更新完成后会有一个版本,填写在下面
composer global require "fxp/composer-asset-plugin:~1.1.1"
 
# 注意:输入命令提示警告信息解决方法
rm -rf ~/.composer/vendor/fxp     // 删除临时文件,在运行命令就不会报错啦
 
# 在当前目录上一层目录中安装yii2 (这一步需要等的时间挺长 )
# 高级版(分前后台 )
composer create-project --prefer-dist yiisoft/yii2-app-advanced projectName
 
# 基础版(不分前后台)
composer create-project --prefer-dist yiisoft/yii2-app-basic projectName
 
注意:--stability=dev ( Yii 的开发版(dev 版)不应该用于生产环境中 )
注意:这里有两个版本 
    1:普通版(yiisoft/yii2-app-basic) 
    2:高级版,分(yiisoft/yii2-app-advanced)

4、安装好模板之后,需要对模板进行初始化操作,cd 进入yii2项目目录,输入php init 命令,再选择开发环境0,y,all即进行初始化

5、如果安装的yii2没有vendor文件夹,可以试着清除composer的cache

composer clearcache

然后回到yii2根目录执行composer update -vvv,这里加-vvv是可以显示这条命令的执行进度,
如果只执行composer update,用的是国内镜像的话,很有可能会卡在updating dependencies(including require-dev)这里就没反应了,所以可以加个-vvv来显示命令执行进度,避免误以为是卡住而强制关闭连接。

https://discuss.flarum.org.cn/d/1317

中国镜像配置参考
http://pkg.phpcomposer.com/#tip1
安装参考
https://segmentfault.com/a/1190000003103506

 

出现如下提示:

Database Exception – yii\db\Exception
SQLSTATE[HY000] [2002] No such file or directory

在进行数据库操作时出现如下类似错误,实际则是PHP配置文件php.ini中未指定mysql.sock(或mysqld.sock)文件路径导致的PDO无法链接数据库
解决方法是在php.ini文件中自己手动指向mysql.sock路径

show variables like '%sock%';

find / -iname php.ini  找到php.ini文件
vim php.ini
    mysql.default_socket = /tmp/mysql.sock
    pdo_mysql.default_socket = /tmp/mysql.sock
    mysqli.default_socket = /tmp/mysql.sock
改成mysql.sock实际的路径

开启
extension=php_mysql.dll
extension=php_mysqli.dll

 

 

高级模板

初始化项目
php init 

定时任务
cd /home/xxx/data/website/advanced/console/controllers
vim TaskController.php
<?php
namespace console\controllers;
use yii\console\Controller;
  
class TaskController extends Controller
{
    public function actionIndex()
    {
    	file_put_contents('task.log', date('Y-m-d H:i:s') . "\n", FILE_APPEND);
        echo "我是index方法\n";
    }

    public function actionTest()
    {
        echo "我是test方法\n";
    }
}


#切换到项目根目录
cd /home/xxx/data/website/advanced
#运行console定时任务
php yii task/index

定时任务

crontab -e   #打开定时任务编辑界面
*/1 * * * * php /home/xxx/data/website/advanced/yii task/index   #写入定时程序代码
:wq   #保存退出

crontab: installing new crontab  #有此提示,说明定时任务创建成功
systemctl restart crond  #重启crontab使任务生效


执行env命令得到当前用户的环境变量
vim /etc/crontab   修改PATH环境变量 与 env一致

*/1 * * * * cd /home/xxx/data/website/advanced/ && php yii task/index

 

Yii2 queue的队列使用详解:https://www.jb51.net/article/165724.htm

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值