我用的是ecshop系统,由于虚拟主机空间不够,想把商品图片放置在令外一个虚拟空间里,请问如何修改啊? 5

网站和图片分别放在不同的服务器上?... 网站和图片分别放在不同的服务器上? 展开
 我来答
ecshop开发中心
2015-11-02 · TA获得超过577个赞
知道大有可为答主
回答量:2299
采纳率:0%
帮助的人:573万
展开全部
首先,生成一个域名 img.xxxx.com 并映射到自己的云存储别名,然后把全部图片(含目录结构)上传到 云存储空间。

在config.php 增加
/* 商品详情图片地址替换 */
// 总开关,1启用云存储,0使用本地图片
$imgserver = 1;
// 匹配图片前缀,即上传图片src的共同部分,在“/”前加“\”
$imgserver_pattern = '\/images\/upload';
// 域名前缀,最后不用加“/”
$imgserver_path = 'http://img.xxxx.com';

goods.php 在170-180行左右中寻找

/* 购买该商品可以得到多少钱的红包 */
if ($goods['bonus_type_id'] > 0)

加入以下部分:
// 商品详情图片地址替换, by layen 明朗
if ($imgserver == 1) {
$goods['goods_desc'] = preg_replace('/'.$imgserver_pattern.'/i', $imgserver_path.'\0', $goods['goods_desc']);
}

到$smarty->assign('goods', $goods);
这一句代码之前即可

在/includes/lib_common.php中大约2187行,找到下面代码,增加红色部位即可。

/**

* 重新获得商品图片与商品相册的地址

*

* @param int $goods_id 商品ID

* @param string $image 原商品相册图片地址

* @param boolean $thumb 是否为缩略图

* @param string $call 调用方法(商品图片还是商品相册)

* @param boolean $del 是否删除图片

*

* @return string $url

*/
function get_image_path($goods_id, $image='', $thumb=false, $call='goods', $del=false){
$url = empty($image) ? $GLOBALS['_CFG']['no_picture'] : $image;

if( $GLOBALS['imgserver'] == 1){
$url = str_replace('images/','http://img.xxxx.com/images/',$url); // 修改产品主图路径,by layen 明朗
}

return $url;
}

云存储空间最好选择支持 SFTP的,而且注意目录是否能放下超过1万个文件。
另外布点的服务器最好超过10个城市节点,包括电信、联通、移动和教育网
帕菲特搬运设备
2015-11-02 · TA获得超过649个赞
知道小有建树答主
回答量:1440
采纳率:56%
帮助的人:495万
展开全部
操作起来比较麻烦,还是建议您升级为云主机或者直接扩容吧
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
黄依雄V
2015-11-05 · 超过10用户采纳过TA的回答
知道答主
回答量:181
采纳率:0%
帮助的人:49.4万
展开全部
不建议这么做。这么做的话,就相当于图片是外部采集的,对搜索引擎与排名会有影响的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友0c41ad2
2015-11-03 · 超过11用户采纳过TA的回答
知道答主
回答量:222
采纳率:0%
帮助的人:28.5万
展开全部
你还不如直接用的云主机省事 也不贵
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式