由于某种原因,我无法使用Illuminate'Http'Request
facade从控制器中的url获取任何get参数。我在多个控制器上进行了测试,但没有成功。
使用以下代码,访问domain.com/admin/dashboard?test=test
时在远程服务器上不返回任何内容,但在我的本地机器上返回test
:
The dashboard function is called by the route /admin/dashboard
/**
* Dashboard page
*
* @return view
*/
public function dashboard(Request $request)
{
echo '<pre>';
var_dump($request->all());
echo '</pre>';
// Return here
return;
// ...instead of here
return view('backend::pages.dashboard');
}
我在Ubuntu 14.04 LTS上使用Nginx和php5-fpm运行Laravel 5.1。代码在我的本地Homestead实例和MAMP上运行良好。我检查了我的Nginx配置,一切似乎都很好。我在我的服务器上托管多个站点,我可以在所有其他站点上获得路由参数。
如果有人遇到这个问题,问题是我如何为这个特定的域名设置Nginx。
这个块在我的/etc/nginx/sites-enabled/default
文件不工作与查询字符串:
location / {
try_files $uri $uri/ /index.php$query_string;
}
将其更改为以下内容后,一切正常运行:
location / {
try_files $uri $uri/ /index.php$is_args$args;
}
希望对大家有所帮助。
试着像这样访问它:
$var = Input::get('test');
下面是如何做到的:在Laravel 4中检索控制器中的GET和POST数据还有这里:在Laravel中访问$_GET值的最佳实践是什么?
希望帮助