【发布时间】:2022-01-19 15:55:41
【问题描述】:
Laravel 8 文档说我可以使用正斜杠作为 URL 参数的一部分:
https://laravel.com/docs/8.x/routing#parameters-encoded-forward-slashes
它不适合我。我做到了:
Route::get('/testslash/{param}', function($param) {
return $param;
})->where('param', '.*');
调用它 /testslash/test%2Ftest
导致找不到 404 页面。
使用不带斜线的参数时,加载页面时会按预期显示参数值。
我是否可能需要设置另一个特定的 laravel 选项才能使其正常工作?
【问题讨论】:
-
您在参数文本之间使用的是
/还是%? -
Encoded forward slashes are only supported within the last route segment. -
我在代码中没有看到问题。事实上,我尝试了相同的功能,并且它在我的最后工作得很好。您是否有任何可能导致此问题的配置?
-
@FaizanAli 参数包含 urlencoded 形式的斜杠 (%2F)。它是最后一个路段。
-
您使用的是 Apache 吗? stackoverflow.com/questions/4390436/…
标签: php laravel laravel-8 url-parameters