首页 新闻 会员 周边 捐助

网站的图片分离

0
悬赏园豆:15 [已解决问题] 解决于 2013-01-29 14:50

百度统计实时在线人数200左右,服务器资源接近底线。

想把所有的图片单独分离到专一的图片服务器。

要求网站不能停

求能够平滑过度的解决方案

王者永乐的主页 王者永乐 | 初学一级 | 园豆:29
提问于:2012-12-05 23:03
< >
分享
最佳答案
0

先把图片放到相应的服务器下,如http://img.**.com/

那么图片的地址应该为http://img.**.com/****.jpg

可以写个handler,如LT.HttpHandlers

示例:
    public class ImgRewriter : IHttpHandler, IRequiresSessionState
    {
        /// <summary>
        /// 构造函数
        /// </summary>
        public ImgRewriter()
        {

        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="context">HttpContext对象</param>
        public void ProcessRequest(HttpContext context)

   {

      //正则匹配吧!

    }

 // 重写 IsReusable 属性.
        public bool IsReusable
        {
            get { return true; }
        }

}

 

然后重新配置web.config

接下来,不用多说了

收获园豆:5
amityat | 菜鸟二级 |园豆:476 | 2012-12-10 17:36

嗯   不错的方法,

但是上传的时候怎么办?用ftp?

王者永乐 | 园豆:29 (初学一级) | 2012-12-10 17:42

@王者永乐: 上传直接在图片端写个服务就行,

amityat | 园豆:476 (菜鸟二级) | 2012-12-11 08:38
其他回答(3)
0

主要是现在html上的地址如何的改变,你的地址是存放在数据库中的吗? 如果都是通过程序来读取地址的话,就好办了,最害怕的是有很多的图片的地址是固定在了页面上。

收获园豆:5
chenping2008 | 园豆:9836 (大侠五级) | 2012-12-06 09:18

你的意思是如果在数据库里存储的话,就replace('/upload','http://img.com/upload')  ?

支持(0) 反对(0) 王者永乐 | 园豆:29 (初学一级) | 2012-12-06 09:28

@王者永乐: 差不多啊

支持(0) 反对(0) chenping2008 | 园豆:9836 (大侠五级) | 2012-12-06 09:32
0

看来只能半夜行动了。

jerry-Tom | 园豆:4077 (老鸟四级) | 2012-12-06 10:12

T T   悲剧啊

支持(0) 反对(0) 王者永乐 | 园豆:29 (初学一级) | 2012-12-06 11:12
0

通过Url重写,将图片重定向至新的地址

收获园豆:5
dudu | 园豆:29363 (高人七级) | 2012-12-06 10:31
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册