我正在做laravel上传gallary。上传完成后,我试图在浏览器上显示图像。这里的问题是,我在(parllel)PUBLIC文件夹之外的UPLOADS目录上上传了图像。在获取该图像时,路径为 wesbite.com/Uploads/xxx.jpg 。这里上传视为路由路径。所以我需要忽略路由。有人可以建议吗。
我试过.htaccess RewriteRule ^(上传) - [L] 。但它完全忽略了Uploads目录。
答案 0 :(得分:0)
公用文件夹是webroot,无法通过浏览器访问其外的任何内容。如果您希望通过/uploads/xxx.jpg
之类的内容访问图像,那么您需要uploads
目录中名为public
的目录。
不幸的是,按照它的工作方式,您可以在Web上查看webroot之外的内容,尽管您可以执行类似操作,使用类似file_get_contents()
之类的控制器和方法加载它。
答案 1 :(得分:0)
之前有一个案例我遇到了重定向循环问题,因为我的一条路线与public
中的目录名称相同。修改您的public/.htaccess
# Redirect trailing slashes but only if the directory is non existent
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ $1 [L,R=301]
# Handle front controller but only if file is non existent
# RewriteCond %{REQUEST_FILENAME} !-d (comment this out otherwise the url will route to the directory content listing not your preferred controller action)
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]