【发布时间】:2016-02-14 02:57:38
【问题描述】:
我在 Laravel 5.1 中遇到 Https 请求问题
我创建了一个这样的中间件:
<?php
namespace Subway\Http\Middleware;
use Closure;
use App;
use Redirect;
class UseSSL
{
public function handle($request, Closure $next)
{
if (!$request->secure() && env('APP_ENV') === 'local')
{
return redirect()->secure($request->getRequestUri());
}
return $next($request);
}
}
我的路线是这样的:
Route::group(['middleware' => 'use.ssl'], function () {
// All other routes here
});
我在 kernel.php 中注册了中间件
protected $routeMiddleware = [
'use.ssl' => \Subway\Http\Middleware\UseSSL::class,
];
当尝试访问任何 url 时,页面不加载并且终端返回此错误:
[Thu Nov 12 11:09:30 2015] ::1:50728 Invalid request (Unsupported SSL request)
这有什么问题?
【问题讨论】:
-
根据您的描述,我假设您正在使用
php artisan serve为应用程序提供服务。这利用了PHP's built-in web server,正如文档页面顶部的警告所示:“它并非旨在成为功能齐全的网络服务器。”。缺少的功能之一是 SSL 支持。您需要使用可以处理安全连接的更强大的服务器来设置您的安全开发环境,例如 nginx 或 Apache。
标签: laravel ssl https laravel-5.1