怎么用路由覆盖public里面存在的文件,跪求大神解答,急
假设我有一个图片是在public里面imgs文件夹的位置
那么我可以通过以下方式访问
http://localhost/public/imgs/75f16.jpg
但我要做防盗链
我就想用路由覆盖掉这个位置
那么我写router
Route::get('/imgs/{imgname}', 'HomeController@getimgs');
在HomeController里面写
public function getimgs($imgname){
return "hello!";
}
可是这样写返回的并不是hello,还是那张图片,求大神指点,怎么用路由覆盖public文件的位置,
主要是不想图片放到其他位置,这里面图片已经很多了
那么我可以通过以下方式访问
http://localhost/public/imgs/75f16.jpg
但我要做防盗链
我就想用路由覆盖掉这个位置
那么我写router
Route::get('/imgs/{imgname}', 'HomeController@getimgs');
在HomeController里面写
public function getimgs($imgname){
return "hello!";
}
可是这样写返回的并不是hello,还是那张图片,求大神指点,怎么用路由覆盖public文件的位置,
主要是不想图片放到其他位置,这里面图片已经很多了
5 个回复
程序狗
赞同来自: 晒工资网
ZnithMay
赞同来自:
ZnithMay
赞同来自:
输入不存在的文件时,可以正常访问控制器
不知道是不是跟版本有关,我用的是4.2
ZnithMay
赞同来自:
我的是nginx,如果是apache可以在.htaccess里面设置
下面是例子
location ~* .(gif|jpg|jpeg|png|ico)$ {
valid_referers none blocked www.oschina.net oschina.net;
if ($invalid_referer) {
rewrite ^/ http://www.qq.com/daolian.jpg;
不能设成自己本网站的图片,否则将无限防盗链
}}
xiangzi
赞同来自: