月度归档:2008年06月

动易SiteFactory目录权限详解

官方说明中,指出在2003版本上的目录权限是给Network Service帐户分配写入权限。这是一个理想化的状态,如果要满足分配该帐户写入权限即可正常使用的话,那么要满足以下条件:

  1. 你的站点是采用了默认的帐号设置,即站点程序池的运行标识帐户是Network Service(网络服务);
  2. 你给根目录分配了写入权限,而不是按照安装向导页所提示的那几个目录设置;
  3. 你从来没有修改过NTFS的默认权限设置,对所有目录和文件都会有“Creator Owner”这个帐户的特殊权限。

满足以上条件的话,你给动易所在的目录分配了Network Service的写入权限后,基本上能够正常安装和使用动易(还会遇到一些问题,但是基本上可以了)。 继续阅读

微软官方FastCGI,PHP成为IIS“一等公民”

The IIS Team is eager to announce the official release of Microsoft FastCGI Extension for IIS 6.0 as a free download. For the first time, we are providing hosters and PHP developers full support for a stack of technology that enables reliable, scalable PHP hosting on production Internet Information Services 6.0 (IIS 6) Web servers. (Note: The FastCGI module is built in to Windows Server 2008.)

  以往在Windows 上配置服务器的PHP环境,虽然有无数的经验,无数的文章,但是仍然不能解决所有需求。因此“LAMP”集成安装包才会如此盛行。然而除了PHP,我们有时候也并不愿意放弃ASP和ASP.NET,毕竟Linux不论有多少好处,还有那么多游戏不能在上面运行,那么多软件不能在上面运行。为了工作效率和娱乐,更多的人愿意在虚拟机或者单独的分区里装个Linux来做学习之用。 继续阅读

动易SW中的一个严重但不影响使用的bug(二)

  上次分析出来了Bug的问题所在,是因为selectSingleNode(strNodeName)不能取到要取的元素,但是为什么这么大的Bug没有出现500错误呢?否则的话,这么大的一个bug不要说是来到用户手上,在开发人员手里就已经被发现了。

  这次继续分析这个Bug。在新版本的API_Function.asp这个文件中,selectSingleNode这个函数一共用到了5次,有两次是在SendPost函数里,在很早的版本里那两个地方就用的是selectSingleNode,因为那里传递的参数用的是“//status”和“//message”,是正确的XPath,因此不用考虑那里了。此外的三处,代码如下: 继续阅读

SiteFactory面向的是高端,但是应该更高端

动易SiteFactory

我们知道SF与SW定位不同,SF的目标是大站,是高端。

以前没有做大站的经验,我一直坚信SW没有做不了的站点,现在我参与到一个大点(只是大点而已)的网站,确实感到了一些吃力。

 第一、分布式部署的无力。WEB服务器虽然可以分出动态静态两部分,但是两部分不能分开在两个服务器部署,因此当后台在大规模更新内容或者上传的时候,对前台访问仍有较大影响。(我们高峰时同时有近二十个编辑在大量更新内容),同时还有在线视频新闻在占用带宽。(这个暂时可以想到图片、附件、视频等静态内容全部采用ftp方式传到另一个服务器后调用来减轻压力); 继续阅读

静态页面生成的思考

  现在的网站管理系统都喜欢采用生成静态网页的方式,以减轻服务器端处理过多动态解析的负担;实际上在asp.net、JSP这类编译执行的系统中,这个负担已经被大大减轻,生成静态文件同样是一大负担。当然,生成文件的慢是管理员体验,而首次访问慢是用户体验,从这个角度来说,服务器端生成静态文件还是有必要的。

  但是我们不得不考虑到目前流行的html静态页生成的后遗症——后期维护,实际上这也正式目前我们团队在工作中已经遇到的大问题。 继续阅读

动易SW中的一个严重但不影响使用的bug(一)

BUG描述:整个动易API接口的响应功能,除了操作状态码正常,其它部分完全失效,不会返回错误提示,也不会返回用户信息。

BUG重现:在启用了整合的站点,直接访问/API/API_Response.asp,将会看到<status>1</status>(表示请求不正确或者操作失败),以及<message>操作已成功完成</message>(操作成功返回的默认值)。就表示该BUG存在。

BUG影响:大部分情况下,各个应用程序并不会向动易请求用户信息,因此除了在登陆失败、注册失败等失败操作会提示用户“操作已成功”的假象以外,暂时不会造成其它影响。

继续阅读

撕破兰董的牛皮

最近网上又冒出所谓的“奇人”了。一个叫兰董的。

其实自木子美、芙蓉姐姐等之后,现在想出名的人已经可以耍出各种伎俩在网上引起别人的注意了。本来像兰董这样的货色,太过普通了,不至于造成这么大的效果。

比木子美吗?人家是拿身体出来吸引眼球的;比芙蓉姐姐吗?人家是以“人至贱则无敌”的摆靶子给人骂出名。可是这个兰董呢?想靠炒作现在很火的80后90后之争来出名,本来选题不错,可是光这个选题的话,恐怕拼不过已经早就出手的韩寒等人,何况人家还是正规的80后代表(当然这是媒体的意思,我们80后未必认同),新浪名人博客。兰董如果没有新手段,怎么可能成事?所以再抄袭一下几年前天涯上轰动一时的易烨卿的手段,就是比富。 继续阅读

在ASP中实现UNIX时间戳

  在康盛创想发布UC以后,我曾经尝试为其编写ASP把版本的客户端类库,过程中发现了几个问题,首当其冲的当然是服务器端不支持非php平台的接口,这个问题直接导致了我选择另起炉灶开发自己的通用用户中心。

  但是在研究UC的过程中却也有一些细小的收获。这篇文章说说PHP中的时间戳。在PHP中,时间函数time()获得的不是我们在ASP中的事件函数Now()所返回的“2008-06-04 21:19:41”这样的形式,而是“1123495443”这样的形式。这个记录的是所表示的时间与1970年1月1日午夜零点之间的事件差,单位为秒,不考虑闰年等因素。 继续阅读