Laravel 控制器报错 Target class [App\xxxxx\SMS] does not exist.

开发环境

  • Laravel v8.49.0 (PHP v7.4.7)
  • Mysql V8.0.12

    报错问题

    在本地环境中测试正常,环境为phpstudy集成环境
    Laravel v8.49.0 (PHP v7.4.3)
    主要功能是阿里云短信业务,自定义了一个控制器写的业务,本地测试是正常的,在云端环境部署使用docker 环境,测试其它功能目前都正常,只有短信业务出现如下错误,请求指点,不写感激

报错代码

{
    ata: []
    errcode: 500
    errmsg: "Target class [App\Http\Controllers\Sms\Aliyun\SMS] does not exist."
}
Illuminate\Contracts\Container\BindingResolutionException: Target class [App\Http\Controllers\Sms\Aliyun\SMS] does not exist. in file /wwwroot/lma-clbdelzk82/vendor/laravel/framework/src/Illuminate/Container/Container.php on line 875

#0 /xxx/vendor/laravel/framework/src/Illuminate/Container/Container.php(754): Illuminate\Container\Container->build('App\\Http\\Contro...')
#1 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(841): Illuminate\Container\Container->resolve('App\\Http\\Contro...', Array, true)
#2 /xxx/vendor/laravel/framework/src/Illuminate/Container/Container.php(692): Illuminate\Foundation\Application->resolve('App\\Http\\Contro...', Array)
#3 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Application.php(826): Illuminate\Container\Container->make('App\\Http\\Contro...', Array)
#4 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Route.php(268): Illuminate\Foundation\Application->make('App\\Http\\Contro...')
#5 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Route.php(1019): Illuminate\Routing\Route->getController()
#6 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Route.php(980): Illuminate\Routing\Route->controllerMiddleware()
#7 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Router.php(708): Illuminate\Routing\Route->gatherMiddleware()
#8 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Router.php(688): Illuminate\Routing\Router->gatherRouteMiddleware(Object(Illuminate\Routing\Route))
#9 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Router.php(672): Illuminate\Routing\Router->runRouteWithinStack(Object(Illuminate\Routing\Route), Object(Illuminate\Http\Request))
#10 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Router.php(636): Illuminate\Routing\Router->runRoute(Object(Illuminate\Http\Request), Object(Illuminate\Routing\Route))
#11 /xxx/vendor/laravel/framework/src/Illuminate/Routing/Router.php(625): Illuminate\Routing\Router->dispatchToRoute(Object(Illuminate\Http\Request))
#12 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(166): Illuminate\Routing\Router->dispatch(Object(Illuminate\Http\Request))
#13 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(128): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}(Object(Illuminate\Http\Request))
#14 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#15 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
#16 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle(Object(Illuminate\Http\Request), Object(Closure))
#17 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#18 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle(Object(Illuminate\Http\Request), Object(Closure))
#19 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\TrimStrings->handle(Object(Illuminate\Http\Request), Object(Closure))
#20 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#21 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle(Object(Illuminate\Http\Request), Object(Closure))
#22 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#23 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle(Object(Illuminate\Http\Request), Object(Closure))
#24 /xxx/vendor/fruitcake/laravel-cors/src/HandleCors.php(52): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#25 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fruitcake\Cors\HandleCors->handle(Object(Illuminate\Http\Request), Object(Closure))
#26 /xxx/vendor/fideloper/proxy/src/TrustProxies.php(57): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#27 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(167): Fideloper\Proxy\TrustProxies->handle(Object(Illuminate\Http\Request), Object(Closure))
#28 /xxx/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(103): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}(Object(Illuminate\Http\Request))
#29 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(141): Illuminate\Pipeline\Pipeline->then(Object(Closure))
#30 /xxx/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(110): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter(Object(Illuminate\Http\Request))
#31 /xxx/public/index.php(52): Illuminate\Foundation\Http\Kernel->handle(Object(Illuminate\Http\Request))
#32 {main}
// @FilePath: .\app\Http\Controllers\Sms\Aliyun\SMS.php
namespace App\Http\Controllers\Sms\Aliyun;
require_once __DIR__ . "/SignatureHelper.php";

use Aliyun\DySDKLite\SignatureHelper;
use App\Http\Controllers\Controller;
use App\Http\Controllers\BasicInterface;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Validator;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Redis;

class SMS extends Controller
{
    private $accessKeyId;
    private $accessKeySecret;
    private $PhoneNumbers;
    private $SignName;
    private $TemplateCode;

    /**
     * Create a new SMS instance.
     *
     * @return void
     */
    public function __construct()
    {
    }
// ......
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
最佳答案

文件名大小写的问题吧。得仔细检查下看看

2年前 评论
lancema (楼主) 2年前
讨论数量: 4

\app\Http\Controllers\Sms\Aliyun\SMS.php这个文件没写命名空间吧

2年前 评论
lancema (楼主) 2年前
lancema (楼主) 2年前

在哪里调用的??

2年前 评论
lancema (楼主) 2年前

直接推荐用这个 composer 包解决:github.com/overtrue/easy-sms

2年前 评论
lancema (楼主) 2年前

文件名大小写的问题吧。得仔细检查下看看

2年前 评论
lancema (楼主) 2年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!