【发布时间】:2015-05-12 22:40:45
【问题描述】:
我的 Laravel 应用无法验证上传的图片。它返回此错误消息:
无法猜测 mime 类型,因为没有可用的猜测者(您是否 启用 php_fileinfo 扩展?)
我知道在 php.ini 启用 php_fileinfo.dll/php_fileinfo.so 可以修复它。但我无权访问我的远程服务器的 php.ini 文件。
所以我想还有其他方法可以启用它吗?如何?也许我可以使用 PHP 的 ini_set() 方法?我尝试像这样使用它:
ini_set('extension', 'php_fileinfo.so');
但它不起作用。
我还读到您可以使用 .htaccess 文件覆盖 php.ini 设置。但是怎么做呢?
作为 Laravel 的默认设置,我的 .htaccess 文件是:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes...
RewriteRule ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
你应该如何把这些附加的东西放在那里?
【问题讨论】:
-
一些共享主机仍然允许使用私有 php.ini 文件来处理这类事情。但是,大多数人不这样做,如果这适用于您的情况,您将需要联系您的支持团队以查看他们是否会启用它。在大多数情况下他们不会,因为更改会影响所有用户,并且可以想象它可能会扰乱其他人的应用程序。
标签: php image .htaccess validation laravel