You need to enable JavaScript to run this app. Laravel 7 部署至PHP7.4.13后Passport创建令牌报解析错误怎么办?
优惠活动
大模型
产品
解决方案
定价
更多

Laravel 7 部署至PHP7.4.13后Passport创建令牌报解析错误怎么办?

项目部署运行异常记录

基础环境与触发场景

  • 项目在本地开发环境运行完全正常,部署到服务器后触发运行报错
  • 项目使用框架版本:Laravel 7
  • 服务器PHP版本:7.4.13
  • 报错触发节点:OTP登录验证通过后,执行createToken方法生成访问令牌的逻辑环节

详细报错信息

ParseError: syntax error, unexpected 'Parser' (T_STRING), expecting function (T_FUNCTION) or const (T_CONST) in file /var/www/html/laravel/vendor/lcobucci/jwt/src/Configuration.php on line 22
报错截图展示的内容与上述文字信息完全一致

对应业务逻辑说明

当前接口实现完整OTP验证流程:

  1. 从请求参数中提取两个核心字段:登录手机号对应参数名loginId、用户输入的OTP验证码对应参数名password
  2. 组装登录凭证调用系统认证逻辑,若认证失败,返回OTP错误提示与状态码0
  3. 若认证通过,调用createToken生成访问令牌,向客户端返回用户信息、访问令牌、登录成功提示与状态码1

业务代码实现:

public function verifyOtp(Request $request)
{
    $phoneno = $request->input('loginId');
    $enteredOtp = $request->input('password');

    $loginData = [
        'login_id' => $phoneno,
        'password' => $enteredOtp
    ];

    // dd($loginData);
    if (!auth()->attempt($loginData)) {
        return response([
            'message' => 'OTP incorrect!',
            'status'=>0
        ]);
    } else {
        // dd("Here");
         $accessToken = auth()->user()->createToken('authToken')->accessToken;
         return response([
                'user' =>auth()->user(),
                'access_token' =>$accessToken,
                'message'=>"Successfully login",
                'status'=>1
        ]);
    } 
}

问题根因与排查方向

该报错属于典型的运行环境/依赖版本不匹配问题,可按以下顺序排查解决:

  • 核对Web服务实际调用的PHP版本:检查Nginx/Apache配置中关联的PHP-FPM版本,避免出现配置文件标注PHP7.4.13,但实际运行使用的PHP版本低于7.4的情况(PHP7.4以下版本不支持类属性强类型声明语法,会直接触发该ParseError)
  • 核对依赖安装流程:本地开发的依赖版本是根据composer.lock锁定的适配版本,服务器部署时如果执行composer update而非composer install,会拉取4.x系列的最新版lcobucci/jwt,该版本与Laravel 7配套的Passport 9.x存在兼容问题。解决方式为删除服务器上的vendor目录、执行composer install --no-dev --optimize-autoloader严格按照锁文件安装对应版本的依赖
  • 若完成上述步骤后仍报错,清理服务器OPcache缓存,避免旧的语法解析缓存引发的文件加载异常

内容的提问来源于stack exchange,提问作者aungsoeoo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.11.10 22:36:04