我正在使用最新版本的 Laravel 4,但无法设置 cookie:
Route::get('cookietest', function()
{
Cookie::forever('forever', 'Success');
$forever = Cookie::get('forever');
Cookie::make('temporary', 'Victory', 5);
$temporary = Cookie::get('temporary');
return View::make('cookietest', array('forever' => $forever, 'temporary' => $temporary, 'variableTest' => 'works'));
});
查看脚本:
@extends('layouts.master')
@section('content')
Forever cookie: {{ $forever }} <br />
Temporary cookie: {{ $temporary }} <br />
Variable test: {{ $variableTest }}
@stop
产量:
Forever cookie:
Temporary cookie:
Variable test: works
如果我刷新页面或在一个路由中创建 cookie 并尝试在另一个路由中访问它们并不重要。我可以确认没有通过上述操作设置 cookie。cookie 'laravel_payload' 和 'laravel_session' 以及 'remember_[HASH]' 确实存在,我可以使用 setcookie 使用常规 PHP 设置 cookie。
在我能找到的任何地方都不会抛出或记录任何错误。我在本地运行 Linux Mint 并在我的服务器上运行 Debian,两者都使用 nginx,我在这两个地方都有同样的问题。