Posts Tagged ‘’

ASP 链接 Access 客户端的工作过多的错误解决

星期五, 10月 9th, 2009

朋友的 windows2003+IIS 服务器出了问题。所有静态页工作正常,asp+access页面都响应超时,并且出现提示“客户端的工作过多”的80004005错误。

首先排除了代码的问题,IIS也一切正常。接着看了一下IIS日志,多数网站的流量很小,看不出来异常。这时发现HTTPERR没有关闭,随便打开一页,好家伙,全都是某个静态网站下级目录bbs/中的asp程序产生的错误记录,路径大概是bbs/add.asp?keyword=……,而且错误发生概率极高,每秒几条。问题很明显了,是利用程序漏洞的数据库注入。这个网站恰恰主站是静态页,只有这么一个留言程序,所以之前没有注意到,而问题恰恰就发生在这里。去网站目录里看,access已经达到1G了,正常来讲,access一旦超过百兆,就已经承受不了了,可想而知1G的数据库链接导致服务器的ODBC发生错误,是必然的结果。

问题找到了,解决办法也很简单,只要将错误路径改名,断开注入入口,服务器就恢复正常了。

SAAS之路(一)

星期三, 10月 29th, 2008

saas已经日趋成熟并形成产业。事实上,知道saas之前,我就已经酝酿一个saas思想的产品了。我想很多开发者 也有类似的经验。其实saas并不神秘。我们所使用的论坛、博客(多用户)、email,都是萦绕着saas概念的产品。saas虽然有着怪异却无可替代 的名称——“软件既服务(software as a service)”;然而从另外一个角度,其本质也可以被理解为——“多用户”。

我 们用blog举例。最早的blog是单用户的(现在单用户依然盛行)。那时候如果某人希望发布日志,他需要购买虚拟主机,申请域名,然后架设简单的程序或 者用frontpage做静态页面(那是好多年前的事情了)。这可以看作是单用户的web-log。不久出现了一些叫做bsp的家伙,任何人都可以在他们 的网站上申请相对独立的blog的程序,省去了选择主机和制作日志的麻烦。从这个角度,bsp是典型的saas。只是bsp更多的针对个人而不是企业。我 们通常也不怎么将blog看作是software或者service。

那么我再举一个更简单的例子,也许更加说明问题。大家还用 windows下的notepad么?这是个无法再简单的软件,但毕竟它被我们称作software。现在我不使用notepad了。第一,如果要编辑本 地文本,我有了更好的文本编辑器,比如notepad2或者editplus;第二,如果要记录一些灵感,或者摘录一段网文,我会在firefox上启动 google的notebook服务。这就对了,这就是software as a service。google的所有web工具都是saas。我们用google notebook取代notepad,不仅仅因为我们喜欢google胜过微软,更因为google notebook更强大(而且随着不知不觉的升级而越加强大),更容易分类和检索,更易于储存和同步,更加无处不在(只要能上网,哪怕在苹果或者手机 上)。这就是saas的优势。

待续

lastRSS的使用

星期一, 4月 14th, 2008

lastRSS 是小巧高效的php处理rss开源类。百度一下,国内有不少使用者,但中文资料几乎没有。其实包括注释才220行的代码也不需要太多的资料,下面的一段代码,应该足够说明问题了。

<?php

/**
* @author citywill (http://blog.citywill.net)
* @copyright 2008
*/

$rssURL=’http://blog.citywill.net/feed’;    //指定RSS源

include(’lastRSS.php’);        //载入类
$rss=new lastRSS;            //实例化

$rss->cache_dir=’cache’;    //设置缓存目录,要手动建立
$rss->cache_time=3600;    //设置缓存时间。默认为0,即随访问更新缓存;建议设置为3600,一个小时
$rss->default_cp=’UTF-8′;    //设置字符编码,默认为UTF-8
$rss->items_limit=10;        //设置输出数量,默认为10
$rss->date_format=’U';        //设置时间格式。默认为字符串;U为时间戳,可以用date设置格式
$rss->stripHTML=false;        //设置过滤html脚本。默认为false,即不过滤
$rss->CDATA=’content’;        //设置处理CDATA信息。默认为nochange。另有strip和content两个选项

$rs=$rss->Get($rssURL);        //处理RSS并获取内容
//print_r($rs);                //输出

echo ‘
<h1><a href=”‘.$rs['link'].’”>’.$rs['title'].’</a> <a href=”‘.$rssURL.’”>feed</a></h1>
<div class=”desc”>’.$rs['description'].’</div>’;

echo ‘<ul>’;
foreach($rs['items'] as $rsItem)
{
echo ‘
<li>
<h2>
['.date('m-j',$rsItem[pubDate]).’]
<a href=”‘.$rsItem['link'].’”>’.$rsItem['title'].’</a>
</h2>
<div class=”desc”>’.substr($rsItem['description'],0,500).’</div>
</li>’;
}
echo ‘</ul>’;
?>

到这里下载lastRSS

帮忙看看这样的项目管理系统

星期四, 4月 10th, 2008

描述:

  • 以业务为核心,以项目为主导,以客户资源和项目记录为主要内容的系统;
  • 贯穿整个业务流程,包括意向、签订、需求、成本、开发、测试、验收、售后等一系列业务流程;
  • 提供给管理人员、业务人员、开发人员等用户使用。

问题:

  • 现在有没有这样的系统?
  • 如果有叫什么,有没有开源案例?
  • 如果没有,则有没有可行性?

看到了帮忙分析!谢谢!

帮助系统和Q&A的设计和体验

星期三, 3月 26th, 2008

本文原载自本人08年2月14日的海内日志

海内目前还没有完整的帮助系统,版权栏的帮助链接指向的是“系统留言板”,实际上是一个由用户提供问题框架的被动Q&A系统。我的理解是——Q&A系统只是帮助系统的一个组成部分,或者另一种阐述形式,不能完全代替HELP。

校内的帮助系统也是Q&A,但比海内的留言板增加了导航功能。这让我想到,帮助系统至少应该是应用了标签的Q&A(这个发现让我激动)。或者运营者能力有限或者太懒又或者过于重视用户体验再或者对用户过于依赖,那么用完全被动的Q&A代替主动帮助似乎是先进的做法,但是,至少你应该对多达7页的信息进行必要的归类吧。

我想海内没有提供主动帮助系统的另外一个原因是,海内自持易用性较高,导航较明晰,提示较到位。但是海内,请不要吧用户当成你的产品经理。毕竟已经开放注册了,你就beta了吧。多达7页的被动Q&A已经说明问题了,没有什么能够代替一套优秀的HELP。