无法使用laravel检索GET参数

时间:2015-08-10 17:50:26

标签: php laravel

我正在开发一个Laravel项目,我正试图从控制器获取GET参数。请求包含?date={value}的网页应返回value,如下所示:

public function getIndex(Request $request) {
    return $request->input("date");
}

但这不起作用。 POST请求按预期工作。我通过cloudflare使用nginx。我尝试使用

创建一个普通的PHP文件
echo $_GET["date"];

工作正常。

3 个答案:

答案 0 :(得分:10)

我发现了我的问题。在网站的nginx配置(/etc/nginx/sites-available/default)中,我有

location / {
    try_files $uri $uri/ /index.php?;
}

应该是

location / {
    try_files $uri $uri/ /index.php?$query_string;
}

已修复,重新启动,现在可以正常工作。

答案 1 :(得分:0)

也许getIndex()和Request $ request不能与Route :: controller一起使用。使用get('/ my-route'),它更灵活。

答案 2 :(得分:0)

我的问题是从.htaccess删除了index.php之后的url文件中,只需在.htaccess文件中添加以下简单代码:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php/$1 [L]