简体   繁体   中英

laravel sql error on server, `Malformed UTF-8 characters, possibly incorrectly encoded` error

My laravel app is working fine on Postman locally and returning what I want, when I upload to the server and test using postman I get this message

InvalidArgumentException: Malformed UTF-8 characters, possibly incorrectly encoded in file

Both MySQL are running using utf-8 collation my config/database.php says:

'mysql' => [
        'driver' => 'mysql',
        'url' => env('DATABASE_URL'),
        'host' => env('DB_HOST', '127.0.0.1'),
        'port' => env('DB_PORT', '3306'),
        'database' => env('DB_DATABASE', 'forge'),
        'username' => env('DB_USERNAME', 'forge'),
        'password' => env('DB_PASSWORD', ''),
        'unix_socket' => env('DB_SOCKET', ''),
        'charset' => 'utf8mb4',
        'collation' => 'utf8mb4_unicode_ci',
        'prefix' => '',
        'prefix_indexes' => true,
        'strict' => true,
        'engine' => 'InnoDB',
        'options' => extension_loaded('pdo_mysql') ? array_filter([
            PDO::MYSQL_ATTR_SSL_CA => env('MYSQL_ATTR_SSL_CA'),
        ]) : [],
    ],

any ideas would be appreciated Edit: the error trace is as follows:

InvalidArgumentException: Malformed UTF-8 characters, possibly incorrectly encoded in file /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Http/Response.php on line 61
#0 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Http/Response.php(35): Illuminate\Http\Response->setContent()
#1 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/ResponseFactory.php(57): Illuminate\Http\Response->__construct()
#2 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/helpers.php(724): Illuminate\Routing\ResponseFactory->make()
#3 /home/woodemmj/shopping-spree.woodsowl.net/app/Http/Controllers/OrderController.php(22): response()
#4 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(54): App\Http\Controllers\OrderController->showOrders()
#5 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(45): Illuminate\Routing\Controller->callAction()
#6 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Route.php(261): Illuminate\Routing\ControllerDispatcher->dispatch()
#7 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Route.php(204): Illuminate\Routing\Route->runController()
#8 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Router.php(725): Illuminate\Routing\Route->run()
#9 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Routing\Router->Illuminate\Routing\{closure}()
#10 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Middleware/SubstituteBindings.php(50): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#11 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Routing\Middleware\SubstituteBindings->handle()
#12 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(126): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#13 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(102): Illuminate\Routing\Middleware\ThrottleRequests->handleRequest()
#14 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Middleware/ThrottleRequests.php(54): Illuminate\Routing\Middleware\ThrottleRequests->handleRequestUsingNamedLimiter()
#15 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Routing\Middleware\ThrottleRequests->handle()
#16 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php(33): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#17 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful->Laravel\Sanctum\Http\Middleware\{closure}()
#18 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#19 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/sanctum/src/Http/Middleware/EnsureFrontendRequestsAreStateful.php(34): Illuminate\Pipeline\Pipeline->then()
#20 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Laravel\Sanctum\Http\Middleware\EnsureFrontendRequestsAreStateful->handle()
#21 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#22 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Router.php(727): Illuminate\Pipeline\Pipeline->then()
#23 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Router.php(702): Illuminate\Routing\Router->runRouteWithinStack()
#24 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Router.php(666): Illuminate\Routing\Router->runRoute()
#25 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Routing/Router.php(655): Illuminate\Routing\Router->dispatchToRoute()
#26 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(167): Illuminate\Routing\Router->dispatch()
#27 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(141): Illuminate\Foundation\Http\Kernel->Illuminate\Foundation\Http\{closure}()
#28 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#29 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ConvertEmptyStringsToNull.php(31): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#30 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ConvertEmptyStringsToNull->handle()
#31 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php(21): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#32 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TrimStrings.php(40): Illuminate\Foundation\Http\Middleware\TransformsRequest->handle()
#33 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\TrimStrings->handle()
#34 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php(27): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#35 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\ValidatePostSize->handle()
#36 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/PreventRequestsDuringMaintenance.php(86): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#37 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Foundation\Http\Middleware\PreventRequestsDuringMaintenance->handle()
#38 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Http/Middleware/HandleCors.php(62): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#39 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\HandleCors->handle()
#40 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Http/Middleware/TrustProxies.php(39): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#41 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(180): Illuminate\Http\Middleware\TrustProxies->handle()
#42 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php(116): Illuminate\Pipeline\Pipeline->Illuminate\Pipeline\{closure}()
#43 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(142): Illuminate\Pipeline\Pipeline->then()
#44 /home/woodemmj/shopping-spree.woodsowl.net/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php(111): Illuminate\Foundation\Http\Kernel->sendRequestThroughRouter()
#45 /home/woodemmj/shopping-spree.woodsowl.net/public/index.php(52): Illuminate\Foundation\Http\Kernel->handle()
#46 {main}

code:

public function showOrders()
    {
        $orders = Order::where('customer_id', auth()->guard('customers')->user()->id)->orderByDesc('created_at')->get();
        return response();
    }

If you're using json_encode use toJson method instead. or htmlentities before json_encode

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM