2017-11-18 77 views
2

請幫我解決這個簡單的PHP ajax請求問題,因爲它阻塞了我很長時間的項目。PHP Laravel同時執行多個ajax請求會給出一個'加密密鑰'服務器錯誤

向PHP控制器同時發送許多(如100個)ajax GET請求會給出'沒有指定應用程序加密密鑰'。錯誤。 在Laravel,我創建了以下路由器:

<?php 
Route::get('/database/abc/load_single/{elementId}','[email protected]'); 

和abcController定義爲:

<?php 
namespace App\Http\Controllers; 
class abcController extends Controller{ 
    public function loadSingle($elementId){ 
     return 'abc'; 
    } 
} 

然後,在瀏覽器中,我在同一時間發送AJAX GET請求100次:

for (var index=0; index<100; index++){ 
    $.ajax({ 
     type: "GET", 
     url: urlPrefix + "database/abc/load_single/10001", 
    }); 
} 

並且輸出結果不穩定,我得到了5(它變化)出100個服務器錯誤。在日誌文件中它說:

[2017-11-18 10:31:53] production.ERROR: No application encryption key has been specified. {"exception":"[object] (RuntimeException(code: 0): No application encryption key has been specified. at C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Encryption\\EncryptionServiceProvider.php:42) 
[stacktrace] 
#0 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\helpers.php(1035): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}(NULL) 
#1 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Encryption\\EncryptionServiceProvider.php(46): tap(NULL, Object(Closure)) 
#2 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Encryption\\EncryptionServiceProvider.php(24): Illuminate\\Encryption\\EncryptionServiceProvider->key(Array) 
#3 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(749): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}(Object(Illuminate\\Foundation\\Application), Array) 
#4 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(631): Illuminate\\Container\\Container->build(Object(Closure)) 
#5 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(586): Illuminate\\Container\\Container->resolve('encrypter', Array) 
#6 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(721): Illuminate\\Container\\Container->make('encrypter', Array) 
#7 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(885): Illuminate\\Foundation\\Application->make('encrypter') 
#8 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(813): Illuminate\\Container\\Container->resolveClass(Object(ReflectionParameter)) 
#9 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(780): Illuminate\\Container\\Container->resolveDependencies(Array) 
#10 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(631): Illuminate\\Container\\Container->build('App\\\\Http\\\\Middle...') 
#11 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(586): Illuminate\\Container\\Container->resolve('App\\\\Http\\\\Middle...', Array) 
#12 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(721): Illuminate\\Container\\Container->make('App\\\\Http\\\\Middle...', Array) 
#13 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(215): Illuminate\\Foundation\\Application->make('App\\\\Http\\\\Middle...') 
#14 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(189): Illuminate\\Foundation\\Http\\Kernel->terminateMiddleware(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\JsonResponse)) 
#15 C:\\xampp\\htdocs\\blank\\public\\index.php(60): Illuminate\\Foundation\\Http\\Kernel->terminate(Object(Illuminate\\Http\\Request), Object(Illuminate\\Http\\JsonResponse)) 
#16 {main} 
"} 
[2017-11-18 10:34:11] production.ERROR: No application encryption key has been specified. {"exception":"[object] (RuntimeException(code: 0): No application encryption key has been specified. at C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Encryption\\EncryptionServiceProvider.php:42) 
[stacktrace] 
#0 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Support\\helpers.php(1035): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}(NULL) 
#1 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Encryption\\EncryptionServiceProvider.php(46): tap(NULL, Object(Closure)) 
#2 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Encryption\\EncryptionServiceProvider.php(24): Illuminate\\Encryption\\EncryptionServiceProvider->key(Array) 
#3 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(749): Illuminate\\Encryption\\EncryptionServiceProvider->Illuminate\\Encryption\\{closure}(Object(Illuminate\\Foundation\\Application), Array) 
#4 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(631): Illuminate\\Container\\Container->build(Object(Closure)) 
#5 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(586): Illuminate\\Container\\Container->resolve('encrypter', Array) 
#6 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(721): Illuminate\\Container\\Container->make('encrypter', Array) 
#7 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(885): Illuminate\\Foundation\\Application->make('encrypter') 
#8 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(813): Illuminate\\Container\\Container->resolveClass(Object(ReflectionParameter)) 
#9 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(780): Illuminate\\Container\\Container->resolveDependencies(Array) 
#10 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(631): Illuminate\\Container\\Container->build('App\\\\Http\\\\Middle...') 
#11 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Container\\Container.php(586): Illuminate\\Container\\Container->resolve('App\\\\Http\\\\Middle...', Array) 
#12 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Application.php(721): Illuminate\\Container\\Container->make('App\\\\Http\\\\Middle...', Array) 
#13 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(138): Illuminate\\Foundation\\Application->make('App\\\\Http\\\\Middle...') 
#14 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) 
#15 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#16 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(647): Illuminate\\Pipeline\\Pipeline->then(Object(Closure)) 
#17 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(622): Illuminate\\Routing\\Router->runRouteWithinStack(Object(Illuminate\\Routing\\Route), Object(Illuminate\\Http\\Request)) 
#18 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(588): Illuminate\\Routing\\Router->runRoute(Object(Illuminate\\Http\\Request), Object(Illuminate\\Routing\\Route)) 
#19 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php(577): Illuminate\\Routing\\Router->dispatchToRoute(Object(Illuminate\\Http\\Request)) 
#20 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(176): Illuminate\\Routing\\Router->dispatch(Object(Illuminate\\Http\\Request)) 
#21 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(30): Illuminate\\Foundation\\Http\\Kernel->Illuminate\\Foundation\\Http\\{closure}(Object(Illuminate\\Http\\Request)) 
#22 C:\\xampp\\htdocs\\blank\\vendor\\fideloper\\proxy\\src\\TrustProxies.php(56): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#23 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(149): Fideloper\\Proxy\\TrustProxies->handle(Object(Illuminate\\Http\\Request), Object(Closure)) 
#24 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) 
#25 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(30): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#26 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure)) 
#27 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) 
#28 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest.php(30): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#29 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\TransformsRequest->handle(Object(Illuminate\\Http\\Request), Object(Closure)) 
#30 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) 
#31 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize.php(27): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#32 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\ValidatePostSize->handle(Object(Illuminate\\Http\\Request), Object(Closure)) 
#33 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) 
#34 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode.php(46): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#35 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(149): Illuminate\\Foundation\\Http\\Middleware\\CheckForMaintenanceMode->handle(Object(Illuminate\\Http\\Request), Object(Closure)) 
#36 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Pipeline.php(53): Illuminate\\Pipeline\\Pipeline->Illuminate\\Pipeline\\{closure}(Object(Illuminate\\Http\\Request)) 
#37 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Pipeline\\Pipeline.php(102): Illuminate\\Routing\\Pipeline->Illuminate\\Routing\\{closure}(Object(Illuminate\\Http\\Request)) 
#38 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(151): Illuminate\\Pipeline\\Pipeline->then(Object(Closure)) 
#39 C:\\xampp\\htdocs\\blank\\vendor\\laravel\\framework\\src\\Illuminate\\Foundation\\Http\\Kernel.php(116): Illuminate\\Foundation\\Http\\Kernel->sendRequestThroughRouter(Object(Illuminate\\Http\\Request)) 
#40 C:\\xampp\\htdocs\\blank\\public\\index.php(55): Illuminate\\Foundation\\Http\\Kernel->handle(Object(Illuminate\\Http\\Request)) 
#41 {main} 
"} 

應該有一些配置,我錯過了這個問題。 請幫我解決這個問題。非常感謝。

回答

4

首先,請確保您的APP_KEY已設置爲您的.env文件。

現在,如果你真的設置了它,請嘗試運行php artisan config:cache來緩存配置。此外,如果您直接在您的應用中使用APP_KEY,請確保您正在使用相應的配置密鑰。

+0

嗨Marcin,你的回答(好吧,5分鐘後)令人驚訝地解決了我的問題(我已經花了整整一天的時間來修復它),儘管我仍然不知道它爲什麼修復它。但非常感謝! – user4816915