全部博文(372)
2012年(372)
分类: 虚拟化
2012-04-18 21:47:11
在做大站或门户站的时候,通常需要一个图片服务器,后台或客户上传的图片均发送到此服务器中,比如:
Web服务器: net
图片服务器:img.xxoo.com
后台域名:admin.xxoo.com
疯狂秀才 QQ:1055818239
文章中的图片地址,就会像这个样子:
img.xxoo.com/upload/aabb.jpg
假如我们数据库的存放图片的地址 是不带域名的 如:/upload/aabb.jpg
后台在修改文章的时候,在CKEDITOR中就看不到图片,为了解决这个问题,我的做法是:
建个方法,用于替换图片地址
Regex imgReg = new
Regex(@"]*(\ssrc=)('|"")?([^>""'\s]*\.(gif|jpg|bmp|jpeg|psd|png|svg|dxf|wmf|tiff|swf))('|"")?[\S\s][^>]*>",
RegexOptions.IgnoreCase); 疯狂秀才 QQ:1055818239
MatchCollection matches = imgReg.Matches("文章内容");
foreach (Match m in matches)
{ 疯狂秀才 QQ:1055818239
string newStr, oldStr, tempstr; 疯狂秀才 QQ:1055818239
oldStr = m.Groups[0].Value;
newStr = m.Groups[3].Value;
tempstr = oldStr.Replace(newStr, "图片服务器域名"+newStr);
疯狂秀才 QQ:1055818239
article.articlecontent = article.articlecontent.Replace(oldStr, tempstr);
}
这样得的文章内容中的图片就是带有域名的地址啦,这样CKEDITOR中也就能看图片啦,不会在是红X啦!
不知道我有没有说明白,大家有没有木有看明白。唉!!