Page 1 of 2 in the Web 技术 category Next Page
 Friday, February 12, 2010

1) AutoPlay Menu Builder
AutoPlay Menu Builder 是一个功能强大的光盘自动运行菜单制作工具,使用它,你不需要具备任何专业知识,只需要经过鼠标拖放和几次鼠标点击就可以轻松的制作出非常漂亮的AutoRun菜单程序,让你制作菜单象垒积木一样容易!程序采用类似于Delphi和VB的所见即所得的操作界面,是你不需要编写一行代码就只需要拖放组件就可以轻松制作出专业的菜单效果

http://www.linasoft.com/apmbuilder.php

2) ZMaker

据说是国内最好的电子杂志制作工具

http://zmaker.zcom.com/

3) MakeInstantPlayer
将视频转换成可执行文件, 唯一的缺点就是打开的时候比较慢, 因为它的本质是包裹了一个 Media Palyer Classic
http://mulder.dummwiedeutsch.de/home/?page=projects#instplay

4) MiniWebsvr (开源)

一个袖珍web服务器 可用命令行启动, 当你的光盘需要host 一些简单页面的时候 可以用这个软件

http://miniwebsvr.sourceforge.net/

5) Netbox

将web server 打包成exe 文件, 但貌似已经停止更新和维护了

http://www.netbox.cn

Friday, February 12, 2010 7:04:28 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Thursday, February 11, 2010

几种跳转方式的区别

301 Redirect: 代表永久转义

302 Redirect: 暂时转移

200 : 在服务器上完成了页面的转移, 对客户端完全透明

302 Redirect 由于是暂时转移,如果把自己的网址A转到一个网址B上, google 等抓取工具可能会把你的网址A作为网站B内容的入口点, 这样网址B 就被劫持了。

所以, 如果你网站要用302 转移, 千万要慎重, 如果被google误认为是恶意劫持, 可能就会被加入黑名单了。

asp.net 实现这些的方法

301 Redirect:

            Response.Clear();
            Response.StatusCode = 301;
            Response.Status = "301 Moved Permanently";
            Response.AddHeader("Location", "/Homepage/default.aspx");

302 Redirect:

Response.Redirect("Homepage/Default.aspx");

200 无错误代码的使用转移

Server.Transfer("/Homepage/Default.aspx");
Thursday, February 11, 2010 3:37:03 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Saturday, February 06, 2010

目前的流量起都支持传输gzip内容压缩的页面, 这样可以大大提高传输性能

方法1: IIS 设置

a)打开Internet信息服务(IIS)管理器 -> 站点 (指总体的) ->右键属性

在服务项里面, 静态内容压缩和动态内容压缩, 其中静态内容压缩必需要指定一个写压缩临时文件的目录, 该目录必须有IIS的写权限

b) 添加一个一个服务扩展

名称随意

dll: C:\WINDOWS\system32\inetsrv\gzip.dll

并且启用

c) 修改 C:\WINDOWS\system32\inetsrv\Metabase.xml

添加需要压缩的静态和动态的扩展名

方法2: asp.net MVC 做网页内容压缩

对于MVC的程序由于没法指定扩展名, 需要用actionfilter的方法

创建一个类: CompressFilter

    public class CompressFilter : ActionFilterAttribute
    {
        public override void OnActionExecuting(ActionExecutingContext filterContext)
        {
            HttpRequestBase request = filterContext.HttpContext.Request;

            string acceptEncoding = request.Headers["Accept-Encoding"];

            if (string.IsNullOrEmpty(acceptEncoding)) return;

            acceptEncoding = acceptEncoding.ToUpperInvariant();

            HttpResponseBase response = filterContext.HttpContext.Response;

            if (acceptEncoding.Contains("GZIP"))
            {
                response.AppendHeader("Content-encoding", "gzip");
                response.Filter = new GZipStream(response.Filter, CompressionMode.Compress);
            }
            else if (acceptEncoding.Contains("DEFLATE"))
            {
                response.AppendHeader("Content-encoding", "deflate");
                response.Filter = new DeflateStream(response.Filter, CompressionMode.Compress);
            }
        }

    }

    在对应的controller action 中使用即可打到压缩的效果

        [CompressFilter]
        public ActionResult Index()
        {

            . . .

        }

 

Saturday, February 06, 2010 4:55:53 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Sunday, February 22, 2009

有时候我们要给所有的html input 标签设定相同的css, 那可以这样写:

INPUT
{
 border: 1px #444444 solid;
}

但有时候, 我们可能仅要对特点type的input 标签 (如:文本框 )设定 相同的css 怎么作呢?  一个一个设太麻烦了.

因此, 对于 firefox 浏览器 我们可以这样写

INPUT[type="text"]
{
 border: 1px #444444 solid;
}

但以上方法 IE是不支持的, 对于IE , 我们就需要这样写:

INPUT
{
 border: expression((this.type=="text")?"1px #444444 solid":"style");
}

Sunday, February 22, 2009 4:58:05 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Tuesday, February 17, 2009

今天1月底, ASP.NET MVC 的RC1 终于出了, 好在兼容性上没有什么大问题, MVC beta4 的代码编译运行都不会报错。但是在页面输入校验上做了增强。

众所周知, 传统ASP.NET 缺省是对页面上的输入提交内容做校验的, 若提交的内容里面带有潜在危险,如: HTML 标签, javascript 代码,  就会报 A potentially dangerous Request.Form value was detected from the client

要想关闭潜在性危险的校验有两种方法:

1) 在aspx  页面上加: <%@   Page   validateRequest="false"   %> 

2) 在web.config  的<system.web>   标签内加: <pages   validateRequest="false"   />   

MVC RC1 对于输入请求也加上了安全校验, 但是MVC的处理方式和通常asp.net 的处理方式不同, 因此若要禁用该功能, 不能用上述传统asp.net 所用的两种方法。 而是需要在Controller 的Action 上加上ValidateInput 属性, 如下:

        [ValidateInput(false)]
        [AcceptVerbs(HttpVerbs.Post)]
        public ActionResult SubmitDocument([Bind(Prefix = "")]EPortal_Document mdl)
        {
         ....

        }
Tuesday, February 17, 2009 2:40:38 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Wednesday, October 15, 2008

MS 终于发布了Silverlight 2的正式版, http://silverlight.net 从和 Silverlight 1 比较中看, Silverlight 2 增加了诸多新特性:

Support for Visual Basic.NET and C#; Common Language Runtime (CLR) based languages  
Support for IronPython, IronRuby, Managed JScript, and other Dynamic Language Runtime (DLR) based languages  
Rich Core Framework (e.g. Generics,  collections)  
MultiThreading  
Layout controls including StackPanel and Grid  
Full suite of Controls (TextBox, RadioButton, Slider, Calendar, DatePicker, DataGrid, ListBox, TabControl, and others)  
Managed Control Framework  
Templating Model  
Visual State Manager  
Isolated Storage  
Deep Zoom Technology  
Media – DRM Powered by PlayReady  
Media  Windows Media Audio 10 Professional support  
Media  MediaStreamSource for managed code media file parser and protocol extensibility  
High quality resizing  
Media  Basic SSPL Support  
Cross Domain Network Access  
Easy access to serverside data via Web Services  
Direct access to TCP sockets  
Interoperability with SOAP and REST services, including support for XML, JSON, RSS and Atom data formats  
LINQ (including LINQ to XML, LINQ to JSON, and LINQ to Entities)  
Duplex communications (“push” from Server to Silverlight client)  
Data Binding  
ADO.NET Data Services  
Managed HTML Bridge  
Managed Exception Handling  
.NET Framework Security Enforcement  
Type Safety Verification  
XMLReader/Writer  
Enhanced Keyboard Input Support  
File Upload Support (via WebClient API)  
WPF Compatibility
Accessibility  
Localization  
Remote Debugging (PC and Mac)

Wednesday, October 15, 2008 9:50:17 AM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Thursday, October 09, 2008

jQuery (http://jquery.com/) 是一个轻量级javascript library, 它能方便的和html进行交互。 使javascript 的语句更加简洁。

比如: 点击一个id=div2 的div可以这样写:

            $("#div2").click(function(event)
            {
                $(this).hide("slow");
            });
jQuery还有用于UI效果的 jQuery UI 库。 用它可以制作各种界面功能和效果。 
另外值得一提的是: Microsoft 已经开始支持jQuery, 并会将其整合到visual studio 中。
Thursday, October 09, 2008 3:20:09 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Sunday, September 14, 2008

中秋节在家休息看了一些开源项目:

.NET 开源

YetAnotherForum http://forum.yetanotherforum.net/ 我觉得是目前最好的开源论坛了,但功能较简单, 无法和动网bbs比。
Entlib forum (中文汉化的YAF) http://www.entlib.com/

Cuyahoga CMS http://www.cuyahoga-project.org/ 整体结构比较简单的CMS, 但无法生成静态html
tantCMS http://www.codeplex.com/tantCMS 国内的开源CMS,基于asp.net 3.5, 但完成度较低,界面比较粗糙。
Rainbow Portal http://rainbowportal.net/ 可建大型门户。 模块化扩展管理。 但是本人觉得版本比较乱, 同时如果真要建门户, 现在用sharepoint 肯定更强。

PHP 开源

DeDeCMS 织梦内容管理系统 http://www.dedecms.com/ 中文php CMS, 功能比较完整,本人觉得用下来不错.
PHPWind 中文论坛系统 http://www.phpwind.net
ShopEx 目前国内较好的网上商店商城系统 http://www.shopex.cn/

 

Sunday, September 14, 2008 5:49:50 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Sunday, January 06, 2008

RIA技术的现状和展望 2) - by 纵坐标的幻

今天继续:

目前RIA技术局限和瓶颈 (主要针对主流的 flash silverlight)

1)      检索问题

作为一种互联网的应用, 检索是重要的推广手段, 但是flash由于使用的二进制文件而非纯文本, 导致了google 等检索引擎无法抓取其内容.  显然silverlight 使用XAML (xml 格式) 很好的避免了这一点, silverlight目前尚不成熟, 将来如何拭目以待.

 

2)      应用的安全性

Silverlight flash 通常需要下载到客户端允许, 势必存在安全隐患, 安全隐患是两方面的

A)     浏览者的安全性: 浏览这访问RIA应用时, RIA是否会执行一些威胁用户安全的操作. 通常IE 和相关应用的插件会对操作进行限制, 但难免存在漏洞.

B)     开发者的安全性: RIA被下载到用户本机, 就存在这代码被破解, 通讯协议被破解的问题. Flash 8 swf已经能被轻而易举的破解, 好在flash9 目前破解还比较困难, 然而silverlight (目前1.0) 所用的技术是xml + javascript, 代码完全暴露,毫无安全性可言. 据说 siliverlight 1.1 会有改善.

 

3)      浏览器插件的普及率

Flash 的插件目前有很高的占有率, 可以说是一大优势.  然而 微软的silverlight 凭着操作系统的优势, 相信会迎头赶上.

 

4) 3D 技术

3D 的展示一直是RIA 的一个技术缺口. 目前flash 已经有不少第三方的库, 可以支持3D, 比较流行的有: PaperVision3D , away3D FlashSandy. 但是都不支持硬件加速. 据说flash 10 会直接支持3d技术, 并且有硬件加速

Silverlight 目前还没有3D的支持.

papervision3d 首页的海底demo:

 

 

4)      开发便利性

一直以来RIA的开发有个较大问题, 没法将程序和效果的业务逻辑开发完全剥离,

这也是为什么flash action script 开发人员比较难找的原因 (需要全才才行啊). 随着 Action Script 3 的越来越普及, flash 开发模式也日趋成熟.

Microsoft silverlight, 开发方式更具创意:  效果设计师用Expression Blend Silverlight  xaml进行效果制作. 而程序员用visual studio 对其添加业务逻辑, 两者完全分开. 效果如何? 目前我还没试过,试过后一定告诉大家.

Sunday, January 06, 2008 11:33:02 PM (中国标准时间, UTC+08:00)  #    Disclaimer  |   | 
 Tuesday, January 01, 2008

Away3D (www.away3d.com) 相对 FlashSandy 和 PaperVision3D, 可算是后起之秀了, 虽然现在教程不多, 但是还是很容易上手. 也可以到Goolgle group 提问 http://groups.google.com/group/away3d-dev/ 

做了一个简单的sample.

代码下载

Tuesday, January 01, 2008 12:26:28 AM (中国标准时间, UTC+08:00)  #    Disclaimer  |   |