美的事物是永恒的喜悦。
博客文章
最近发表的评论
  • 在执行任务调度的时候,没有执行,返回 No scheduled commands are ready to run? at 3周前
    $schedule->command('group:check_team')->everyMinute();
    
    # everyMinute 时,是可以的。如果换成其他的,比如 everyFifteenMinutes 就不行了。

    另外,还需要添加 crontab 任务

    vim  /etc/crontab
    # 添加下边的命令,保存
    *  *    * * *   root    php /home/vagrant/code/mlxiu/artisan schedule:run >> /dev/null 2>&1

    既然 crontab 包含了所有功能,laravel 里边可以使用 cron 来按频率执行吧。
    都搞不好。那就这样吧。 看看下图:
    https://static.laravelacademy.org/wp-content/uploads/2018/03/15197270472049.jpg![file](https://lccdn.phphub.org/uploads/images/201809/18/15778/E2XPXzKBcj.png?imageView2/2/w/1240/h/0)
    在定义的时候,添加上描述即可。就是前边的五个※,定义成你需要的就好了。比如:

    */15  *    * * *   root    php /home/vagrant/code/mlxiu/artisan schedule:run >> /dev/null 2>&1
    # 15分钟执行一次
  • 实战课程发布 —— 满满的干货《L06 Laravel 教程 - 电商进阶》 at 1个月前

    :joy: 已经买四本了,还要这一本。多多益善。

  • Observers 怎么监听不到 updated? at 1个月前

    @leo 好的,谢谢。

  • 为何没有在.env 里设置微信的回调 URL?? at 1个月前

    你的回调 url 在你的前端代码里,比如 app,或另外一个站点下(非 xxx/api

    回调到前端代码(app,另外一个站点),再通过 code,去调用接口,就可以接上文章了。

    如果接口这里,再来通过token返回用户信息的代码就好。

    http://www.sunfengxiang.com/1117.html

  • token 保存在哪里呢? at 1个月前

    @liyu001989 嗯是的,想过在尝试中。

  • token 保存在哪里呢? at 1个月前

    @Pepsi丶 嗯是的,想过在尝试中。

  • 用了 SocialiteProviders/weixin ? at 1个月前
    return \Socialite::with('weixin')->redirect(); 
    // 这个跳转到微信申请认证页面。用户点击确定后,
    // 会 `get` 方式带上 `code` 和 `STATE` 回到 callback 页面。

    这些操作,不是这里讲的 接口 的内容。他这里接口,是从获取 code 后开始的。

  • 这种报错是什么意思? at 2个月前

    @web_zzpHomestead 开发环境,比本地配置的环境好太多了。谁用谁知道。

  • 请问视频是哪个软件录制的呢? at 2个月前

    windows 下用 Bandicam 比较不错。

  • 【扩展推荐】Laravel-user-verification 为你的应用添加验证用户邮箱逻辑 at 2个月前

    如果能自定义字段名就好了,并支持多字段,比如 email_verified, idcard_verified 。因为用到这个验证的地方还是比较多的。

  • 请问下这是什么错误? at 2个月前

    我也出现这个了,不知道哪个环节出问题了。对比了下 公钥 私钥 都是对的。

  • PHPHub Composer install 出错? at 2个月前

    @史沟飞 嗯,之前就换过。还是不行。不用镜像也不行。

  • PHPHub Composer install 出错? at 2个月前

    我也遇到这种情况。从 github 上 clone 下来,再 composer install 就会这样。 Laravel 5.6 版本才会这样, Laravel 5.5 版本没事。

  • Homestead 环境没有 phpize 怎么安装 Redis 扩展??? at 2个月前

    @剑尘 是的,我也是这样弄的,趟水过河。

    安装 phpize 。根据 php 版本不同,安装不同的版本。

    sudo apt install php5.6-dev
    # sudo find / -name phpize5.6 就会找到已经安装好的 phpize5.6 。
    # /usr/bin/phpize5.6 (在这个位置)

    下载 redis 包,并编译

    通常都是去 https://pecl.php.net/ 上搜索下载。可以观看 redis 版本以及所需要的 php 版本。因为 redis 在 php5.3 以上都可以用最新版本, 可以直接用最新版本的了。

    cd /usr/local/src 
    # 个人喜好将下载的文件放在这个目录
    sudo git clone https://github.com/phpredis/phpredis.git
    # 或 sudo wget https://pecl.php.net/get/redis-4.1.0.tgz 再 tar解压
    cd phpredis
    sudo /usr/bin/phpize5.6 
    sudo ./configure --with-php-config=/usr/bin/php-config5.6
    sudo make && make install
    # 这样就会编译成功

    将编译好的 redis.so 文件移动到扩展目录

    sudo find / -name redis.so 
    # 找到编译的 redis.so 文件
    php5.6 -i|grep extension_dir 
    # 找到 php5.6 对应的扩展目录( /usr/lib/php/20131226)
    sudo mv /usr/local/src/phpredis/modules/redis.so /usr/lib/php/20131226/redis.so  
    sudo vim /etc/php/5.6/fpm/conf.d/20-redis.ini
    # 20-redis.ini 是新加的,以前是没有的
    # 再 20-redis.ini 中添加 extension=redis.so ,保存退出。
    # 通常,添加扩展是在 php.ini 中,这里是在 fpm/conf.d 添加。

    重启 fpm 服务,看看扩展是否有了

    sudo service php5.6-fpm restart
    php5.6 -m 
    # 或通过 phpinfo(); 函数查看。
  • Homestead 环境没有 phpize 怎么安装 Redis 扩展??? at 2个月前

    以前的版本有的,在 /usr/bin/ 下,比如 /usr/bin/phpize7.1
    现在我全都安装了最新版本,发现没有了。

    sudo find / -name phpize7.1

    在人们的常态意识中,编译 php 扩展都需要 phpize 。现在没有了,又该如何安装扩展呢。手动单独安装 phpize 后,再继续呢还是。因为作为开发环境,使用的 php 版本有点多。遇到的都是新问题,也没去继续尝试。如果有小伙伴有成熟的解决思路,请献上噢。谢谢。

  • Homestead 中有多个 PHP 版本,如何切换版本? at 3个月前

    @keer 这样好啊。免得好傻的去配置。

  • Homestead 中有多个 PHP 版本,如何切换版本? at 3个月前

    Homestead.yaml 配置

    通常, cd ~/Homestead 进入到 Homestead配置目录,编辑(vim Homestead.yaml),增加或删除站点。比如:

    folders:
        - map: ~/Code/work
          to: /home/vagrant/work/
        - map: ~/Code/study
          to: /home/vagrant/study/
    
    sites:
        - map: larabbs.com
          to: /home/vagrant/study/larabbs/public
        - map: mlxiu.com
          to: /home/vagrant/work/mlxiu.com
    

    这个配置是第一步。

    找到 php.ini 还有 nginx

    先找存在的 php 版本

    php -i|grep php.ini
    # /etc/php/7.2/cli/php.ini 可以看到是这里
    cd /etc/php
    ls
    # 你会发现这里有 **5.6  7.0  7.1  7.2** 四个大版本的 php

    再来看看 nginx,因为缘起还是 nginx 来配置。

    cd /etc/nginx/
    cd sites-available
    # 当然,可以一步到位 cd /etc/nginx/sites-available
    ls
    # 你会看到这里有两个文件,文件名就是 Homestead.yaml 中配置的域名
    # 这里是 larabbs.com , mlxiu.com 这两个文件

    假如想将 larabbs.com 这个站点使用的 php 版本切换到 5.6, 只需要修改 larabbs.com 配置。

    location ~ \.php$ {
            fastcgi_split_path_info ^(.+\.php)(/.+)$;
            # fastcgi_pass unix:/var/run/php/php7.2-fpm.sock;
            fastcgi_pass unix:/var/run/php/php5.6-fpm.sock;
            fastcgi_index index.php;
            include fastcgi_params;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

    修改后,保存。
    创建测试文件,在 larabbs/public 下新建 t.php

    cd ~/study/larabbs/public
    vim t.php
    # 输入 <?php phpinfo(); 保存,待重启后使用

    重启 homestead

    vagrant provison
    vagrant reload
    vagrant ssh

    本地访问: http://larabbs.com/t.php,就会看到 php 的版本了。也许,你已经看到 php 的版本已经到 5.6 了。可是有坑。

    有坑

    当你几个站点的 php 版本不一样时,关闭 homestead,再启动时,就会有错误。
    关掉 homestead,再进入时,你会发现一个 502 Bad Gateway 的错误。

    # 操作
    exit
    vagrant halt
    vagrant up

    /var/run/php/ 目录下,也根本没有 php5.6-fpm.sock 。然后,想重启 php-fpm

    /etc/init.d/php-fpm5.6 restart
    # 发现只会重启失败

    那么,那么,将所有站点的 php 版本都配置成 一样 的 就不会出现问题。暂时,配置的 php 最高版本是 7.2,最低是 5.6 。

  • 《L05 Laravel 教程 - 电商实战》发布 at 3个月前

    买的第四本书了。都还来不及细看。

  • Laravel 程序架构设计思路:使用动作类 at 4个月前

    棒棒哒。。。

  • Laravel 中多态关系的表单验证 at 4个月前

    @Soldoros 好一个二话不说