diff --git a/app/admin/controller/v1/Upload.php b/app/admin/controller/v1/Upload.php index a2f729be..de587dd2 100644 --- a/app/admin/controller/v1/Upload.php +++ b/app/admin/controller/v1/Upload.php @@ -72,7 +72,7 @@ class Upload $webp = $image->toWebp(75); $root = config('filesystem.disks.image.root'); $filename = $param['module'] . '/' . ($name_rule() ?? date('Ymd') . '/' . md5((string)time()) . '.webp'); - $webp->save($root . '/' . $filename); + $webp->save($this->checkPath($root . '/' . $filename)); // 获取webp文件大小 $file_size = $webp->size(); // 获取webp文件mime类型 @@ -171,11 +171,36 @@ class Upload 'filesha1' => $image_model->file_sha1 ]); } catch (\Throwable $th) { + dump($th);exit; return error($th->getMessage()); } return error('上传失败'); } + /** + * 检查路径 + * + * @param string $path + * @return string + */ + private function checkPath($path): string + { + $ok = false; + $filename = basename($path); + $dirname = dirname($path); + if (!is_dir($dirname)) { + $ok = @mkdir($dirname, 0755, true); + } + else if (!is_writable($dirname)) { + $ok = @chmod($dirname,0755); + } + + if ($ok) { + return $dirname . '/' . $filename; + } + + throw new \Exception("上传目标目录不可用"); + } /** * 文件名生成回调 * diff --git a/app/index/view/pc/about_us/story.html b/app/index/view/pc/about_us/story.html index 8c509b2b..2213700a 100644 --- a/app/index/view/pc/about_us/story.html +++ b/app/index/view/pc/about_us/story.html @@ -6,7 +6,7 @@
+
{notempty name="banners"}
+
+