Yii2 怎样定义一个url别名指向工程下的upload目录
大家好,向大家请教个问题,为了这个问题我查阅了官方文档没有找到办法,只能来这里向大家求助了。
我的项目用的框架是Yii2的高级应用模板,目前有个上传图片到服务器的需求,由于上传的图片 backend 应用需要用到,frontend 应用也需要用到,所以我打算把图片上传到 和backend、frontend同级 的upload目录下.
可是在显示图片的时候,我不知道该怎么拿到upload目录的url了!
我目前是使用的比较笨的办法是:
/**
* 获取完整的商品图片地址
* @param string $imageName
* @return string
*/
public static function toProductImage($imageName) {
$baseUrl = Yii::getAlias('@web') . '/../../upload';
if (empty($imageName)) {
return $baseUrl.'/image/product/no_pic.jpg';
}
return $baseUrl.'/image/product/'.$imageName;
}
想请教大家是否还有其他更好的办法,比如自己定义一个别名之类的方法,如果有的话,又该怎么做?谢谢!!!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
提供一种解决方式:
解析一个单独的域名,专门用于图片解析地址:如img.sf.com,该域名解析到upload目录,这样代码可以改为
这种情况,还可以对图片域名单独进行CDN加速
@app的上一级目录便是upload的同级目录。