是否需要动态地更改baseUrl of CKFinder?
我需要使用这样的路径:/websitebuilder/www/user_images/$id/。我用谷歌找到了一些答案,但我没能成功。
有人能给我一点提示吗?我该怎么做?
我知道,在config.php中,您更改了baseUrl param,但是如何才能使其简单明了呢?
发布于 2018-03-28 08:56:57
嗨,您可以使用每个实例CKFinder 3的不同文件夹的示例。
基本上,您应该将config.php更新为如下所示:
$id = getID();
$config['backends'][] = array(
'name' => 'default',
'adapter' => 'local',
'baseUrl' => 'http://example.com/ckfinder/userfiles/' . $id,
'root' => '/path/to/ckfinder/userfiles/' . $id
);发布于 2021-08-03 11:50:43
1创建新的中间件:
php :中间件DynamicCkfinderConfig
在handel函数中使用这个代码:不要忘记在文件的顶部使用Auth;
public function handle(Request $request, Closure $next)
{
if (auth()->check()) {
config([
'ckfinder.backends.default' => [
'name' => 'default',
'adapter' => 'local',
'baseUrl' => '/user-' . md5(Auth::user()->id) . '/',
'root' => public_path('/user-' . md5(Auth::user()->id) . '/'),
'chmodFiles' => 0777,
'chmodFolders' => 0755,
'filesystemEncoding' => 'UTF-8'
]
]);
}
return $next($request);
}2在kernel.php文件中添加中间件
protected $routeMiddleware = [
'ckfinderConfig' => \App\Http\Middleware\DynamicCkfinderConfig::class,
];3在ckfinder连接器路由中使用中间件。
Route::any('/ckfinder/connector', [CKFinderController::class, 'requestAction'])
->name('ckfinder_connector')->middleware(['ckfinderConfig']);https://stackoverflow.com/questions/49432207
复制相似问题