我有一个使用模型绑定的表单将数据输入数据库。我试图通过https提供服务,但无法弄明白。
以下是观点:
{!! Form::model(new App\MissingHours, ['route' => ['missinghours.store'], 'class' => 'form-horizontal']) !!}
@include('missinghours/_form', ['submit_text' => 'Submit Hours'])
{!! Form::close() !!}
我已经尝试将网址设置为https://appurl/missinghours/store,但这显然不起作用。我也尝试过在Form :: open_secure之后使用model_secure,但是没有用。当我通过https提供页面并尝试提交表单时,我收到一条警告,说明它不安全且数据未提交。
控制器:
$input = Input::all();
$save = MissingHours::create( $input );
答案 0 :(得分:0)
如果您需要将整个网站设为https(包括表单),则可以在RewriteEngine On
文件的public/.htaccess
下面插入以下代码:
RewriteCond %{HTTPS} !=on
# This checks to make sure the connection is not already HTTPS
RewriteRule ^/?(.*) https://%{SERVER_NAME}/$1 [R,L]
修改强>
您可以像这样创建before
中间件:
<?php
namespace App\Http\Middleware;
use Closure;
class BeforeMiddleware
{
public function handle($request, Closure $next)
{
if (! $request->secure()) return redirect()->secure($request->getRequestUri());
return $next($request);
}
}
然后在表单中使用该中间件。
有关Laravel Middlewares here的更多信息。