【发布时间】:2016-05-26 15:44:46
【问题描述】:
我最近切换到在我的服务器上使用 HTTPS,我在网上找到了一些代码,强制所有传入服务器的请求都使用 HTTPS:
<?php namespace App\Http\Auth\Middleware;
use Closure;
class HttpsProtocol {
public function handle($request, Closure $next)
{
if (!$request->secure() && env('APP_ENV') === 'production') {
return redirect()->secure($request->getRequestUri());
}
return $next($request);
}
}
并将\App\Http\Auth\Middleware\HttpsProtocol::class 添加到我的中间件中。
但是现在我有以下路线:
Route::controller('test', 'TestController');
还有以下控制器:
<?php namespace App\Http\FrontEnd\Controllers;
use App\Http\FrontEnd\Requests;
use App\Http\FrontEnd\Controllers\Controller;
use Illuminate\Http\Request;
use App\Http\FrontEnd\Requests\TestRequest;
use App\Commands\SendEmail, App\Commands\SendSMS;
use Auth, Input, DB, Session, Queue, Crypt;
class TestController extends Controller {
public function postCheck()
{
//
}
public function postConfirm()
{
//
}
}
现在,如果我尝试发布到以下 URL,则该特定路线将不起作用:
/test/confirm
它仅在我使用 https 并且我不明白为什么或如何解决该问题时才有效。
【问题讨论】:
-
你的意思是
Route::controller('test', 'TestController');还是Route::resources('test', 'TestController'); -
是的,我的意思是 route::controller
-
我不认为你可以定义这样的路线。
-
什么意思?这就是我一直在使用的,查看 laravel 文档。
-
对不起,我的错。没看到。
标签: laravel laravel-5 routes http-status-code-301