如何在 yii2 中为 elfinder 设置 URL?
How to set URL for elfinder in yii2?
我在 yii2 框架中使用这个模块,但无法设置正确的 URL
https://github.com/simialbi/yii2-elfinder
'connectionSets' => [
'default' => [ // like elfinder roots
[
'class' => 'simialbi\yii2\elfinder\ElFinderConfigurationLocalFileSystem',
'path' => '@webroot/uploads',
'URL' => '@web/file/files' // HERE PROBLEM
]
]
],
这就是我定义 URL 'URL' => '@web/file/files'
的方式,其中 file
是我的控制器,files
是我的操作。
你能告诉我这个 URL 节目是如何在 yii2 基本模板中传递的吗。
127.0.0.1:8080/project/elfinder/proxy/index?baseUrl=QHdlYi9maWxlL2ZpbGVz&path=/NewFolder/file_example_PNG_500kB.png&_t=1587811929
URL
指向存储文件的 web 目录(所以这与 path
是同一个目录,但是 URL 从 web 可见)。在你的情况下,它可能应该是 @web/uploads
.
我刚刚弄明白了。
第 1 步:- 您需要正确设置 URL 管理器
'urlManager' => [
'controller/action/<file:.*>' => 'controller/action',
]
第 2 步:- 创建一个操作并添加此代码
public function actionYourActionName($file)
{
$image_path = YOUR_UPLOAD_PATH . basename($file);
if (file_exists($image_path)) {
return \yii::$app->response->sendFile($image_path, $file, [
'inline' => true //OPTIONAL
]);
}
return "What exception you want to throw";
}
我在 yii2 框架中使用这个模块,但无法设置正确的 URL https://github.com/simialbi/yii2-elfinder
'connectionSets' => [
'default' => [ // like elfinder roots
[
'class' => 'simialbi\yii2\elfinder\ElFinderConfigurationLocalFileSystem',
'path' => '@webroot/uploads',
'URL' => '@web/file/files' // HERE PROBLEM
]
]
],
这就是我定义 URL 'URL' => '@web/file/files'
的方式,其中 file
是我的控制器,files
是我的操作。
你能告诉我这个 URL 节目是如何在 yii2 基本模板中传递的吗。
127.0.0.1:8080/project/elfinder/proxy/index?baseUrl=QHdlYi9maWxlL2ZpbGVz&path=/NewFolder/file_example_PNG_500kB.png&_t=1587811929
URL
指向存储文件的 web 目录(所以这与 path
是同一个目录,但是 URL 从 web 可见)。在你的情况下,它可能应该是 @web/uploads
.
我刚刚弄明白了。 第 1 步:- 您需要正确设置 URL 管理器
'urlManager' => [
'controller/action/<file:.*>' => 'controller/action',
]
第 2 步:- 创建一个操作并添加此代码
public function actionYourActionName($file)
{
$image_path = YOUR_UPLOAD_PATH . basename($file);
if (file_exists($image_path)) {
return \yii::$app->response->sendFile($image_path, $file, [
'inline' => true //OPTIONAL
]);
}
return "What exception you want to throw";
}