Laravel代客不提供没有扩展名的jpeg文件

时间:2016-09-17 09:54:05

标签: laravel laravel-valet caddy caddyfile

Laravel代客提供的jpeg文件没有大小错误的扩展名,当然也改变了校验和。 我发布了有关示例文件的信息,最后通过代客下载.0的文件。

$ls -la
f2b40f33d19b147bc8d0e88f4b8c489e35c165dd
-rw-r--r--   23905
f2b40f33d19b147bc8d0e88f4b8c489e35c165dd.0
-rw-r--r--   23750 

$ls -la
$ md5 f2b40f33d19b147bc8d0e88f4b8c489e35c165dd
MD5 (f2b40f33d19b147bc8d0e88f4b8c489e35c165dd) = 9b5d3e104764e4b4c2b9e942704091f1
$ md5 f2b40f33d19b147bc8d0e88f4b8c489e35c165dd.0
MD5 (f2b40f33d19b147bc8d0e88f4b8c489e35c165dd.0) = 944e47ce0ccd4da18b7761af0e5f0226

我尝试将一个mime添加到CaddyFile但似乎caddy不支持没有扩展名的文件的mime。我尝试了以下方法:

mime . image/jpeg
mime .* image/jpeg
mime * image/jpeg

带有.jpeg扩展名的相同文件可以,出了什么问题?

1 个答案:

答案 0 :(得分:1)

代客使用mimes.php中的ValetDriver.php根据文件扩展名确定正确的内容类型:

...
"jpeg" => "image/jpeg",
"jpg" => "image/jpeg",
"jpe" => "image/jpeg",
...

你可以在那里添加空的扩展名,以提供没有扩展名的所有内容,如image / jpeg

"" => "image/jpeg"

但是,Valet不应该使用空的扩展名服务器文件,你会收到打破图像的通知

Notice: Undefined index: extension in ...cli\drivers\ValetDriver.php on line 121

作为快速黑客,您可以更改~/.composer/vendor/cli/drivers/ValetDriver.php中的第121行以取消通知

@$extension = pathinfo($staticFilePath)['extension'];