当 URL 不是根时,无法使用 Laravel 获取 URL 上的 GET 参数
Posted
技术标签:
【中文标题】当 URL 不是根时,无法使用 Laravel 获取 URL 上的 GET 参数【英文标题】:Cannot get the the GET parameters on the URL with Laravel when the Url is not the root one 【发布时间】:2019-08-02 06:55:06 【问题描述】:我正在使用以下Laravel
版本:
$ php artisan --version
Laravel Framework 5.5.44
在我的Laravel
路线上,我有以下内容:
...
Route::get('/', function ()
myLog(Input::all());
);
Route::get('/name', function ()
myLog(Input::all());
);
...
当我转到以下网址(第一条路线)时:
https://my.website.com/?field1=value1&field2=value2&field3=value3
我进入日志文件:
2019-03-11 16:15:17|DEBUG|"field1":"value1","field2":"value2","field3":"value3"
这很好。
我的问题是当我转到以下网址(第二条路线)时:
https://my.website.com/name?field1=value1&field2=value2&field3=value3
(通知:/name
)
我进入日志文件:
2019-03-11 16:15:45|DEBUG|"url":"name"
知道为什么当我使用除根路由之外的Laravel
路由时,我无法获取以Get
方式传递的url 上的参数吗?
我只需要以Get
的形式检索这些参数,这是我的要求。
知道如何解决这个问题吗?
谢谢!
【问题讨论】:
你在my.website.com
使用什么服务器?
【参考方案1】:
我在我的案子上发现了问题。
出于某种原因,我在.htaccess
上使用了以下Rewrite Rule
。注意那个文件:
RewriteRule ^(.*)$ index.php?url=$1 [PT,L]
希望对某人有所帮助。
【讨论】:
以上是关于当 URL 不是根时,无法使用 Laravel 获取 URL 上的 GET 参数的主要内容,如果未能解决你的问题,请参考以下文章