9月27
休假你想好怎么过了吗?是出去旅游还是探亲访友?还是选择在家休息,听听音乐、上上网,也或是抓紧这几天全身心地沉醉在网络之中。日夜奋战于网游中不肯罢手,再或是整日泡在论坛上大打口水仗,还或是醉心流连于Blog与微博与知心好友们一起交流。在不知不觉中,大家的眼圈黑了、背也弓了,青春的容颜和健康的体魄,开始被各种网络疾病所渐渐侵蚀。而以下“互联网造就的十大疾病”其实就是真实大家日常生活的写照。想看看自己患了几种网络病的侵扰的朋友可以数一数。
十、眼部疲劳
用眼过度自然会眼部疲劳,所以建议每用电脑几个小时就应该停下来眺望远方一下,这方法对于每个人都适用,也好实现。
九、对健康或痛苦的担忧
多亏互联网资讯发达,人们有机会才能“体验”到这些从未试过得病痛,这种病大多来源于工作上的强度和思想上的压力。对于此种症状的对策
八、头痛
由过度使用网络带来的头痛有很多种,比如敏感性头痛(并非由压力造成,而是眼部和颈部疲劳造成)、慢性头痛(每月有多过半日出现头痛)、压力性头痛就是典型的实例。对于些种症状的对策其实就是尽量保持良好的休息规律,在保证充分的睡眠的同时,在日常生活中也要保持工作或家中的空气流通。
十、眼部疲劳
用眼过度自然会眼部疲劳,所以建议每用电脑几个小时就应该停下来眺望远方一下,这方法对于每个人都适用,也好实现。
九、对健康或痛苦的担忧
多亏互联网资讯发达,人们有机会才能“体验”到这些从未试过得病痛,这种病大多来源于工作上的强度和思想上的压力。对于此种症状的对策
八、头痛
由过度使用网络带来的头痛有很多种,比如敏感性头痛(并非由压力造成,而是眼部和颈部疲劳造成)、慢性头痛(每月有多过半日出现头痛)、压力性头痛就是典型的实例。对于些种症状的对策其实就是尽量保持良好的休息规律,在保证充分的睡眠的同时,在日常生活中也要保持工作或家中的空气流通。
9月27
There are times in your scripts when you are going to want to get the current page URL that is shown the browser URL window. For example maybe a page URL has Querystring info appended to it and you need to send an email off to someone with that same exact URL and Querystring information. There are plenty of other reasons as well.
Here is some code to do it.
Lets say the current page is simply "http://www.hecks.tk/showidc.asp"
This is all you need to get you the current page URL
<%
Thispage ="http://" & Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
%>
Now, if your page has Querystring info and variables you want as well.
Like so "http://www.mysite,com/showidc.asp?ID=109"
Here is some code to do it.
Lets say the current page is simply "http://www.hecks.tk/showidc.asp"
This is all you need to get you the current page URL
<%
Thispage ="http://" & Request.ServerVariables("SERVER_NAME") & Request.ServerVariables("URL")
%>
Now, if your page has Querystring info and variables you want as well.
Like so "http://www.mysite,com/showidc.asp?ID=109"
9月26
使用一种特殊的编程语言、编程很牛,单单靠这个并不能说一名程序员/开发者就是优秀程序员/开发者。 快速发展的开发环境使得这个行业比我今天看到的任何一个行业都要发展迅速,这既有积极的一面也有消极的一面:今天的程序员/开发者有很多编程语言、开发工具和开发平台可选,但是建立一个安全、可扩展的环境却变得难了很多;硬件和软件正日新月异地变得更加复杂,但现在学习新技术比过去要难太多了。
以下是优秀程序员应当具备的品质:
语言和工具(Languages and Tools:)
任何程序员/开发者需要具备的第一个技能就是,能够用编程语言工作并会使用与之相关的主要开发工具,包括:工具、IDEs, web 框架, messaging APIs。
程序设计方法(Programming Paradigm:)
举例来说,很好地理解面向对象,这对使用强制式语言(Imperative Language也称过程式语言)写出可维护的代码至关重要。在企业开发中你会遇到各种不同的问题,理解多种程序设计方法并知道何时使用,将使这些问题迎刃而解。
以下是优秀程序员应当具备的品质:
语言和工具(Languages and Tools:)
任何程序员/开发者需要具备的第一个技能就是,能够用编程语言工作并会使用与之相关的主要开发工具,包括:工具、IDEs, web 框架, messaging APIs。
程序设计方法(Programming Paradigm:)
举例来说,很好地理解面向对象,这对使用强制式语言(Imperative Language也称过程式语言)写出可维护的代码至关重要。在企业开发中你会遇到各种不同的问题,理解多种程序设计方法并知道何时使用,将使这些问题迎刃而解。
9月26
.htaccess 文件 (Hypertext Access file) 是Apache Web服务器的一个非常强大的配置文件,对于这个文件,Apache有一堆参数可以让你配置出几乎随心所欲的功能。.htaccess 配置文件坚持了Unix的一个文化——使用一个ASCII 的纯文本文件来配置你的网站的访问策略。
这篇文章包括了16个非常有用的小技巧。另外,因为.htaccess 是一个相当强大的配置文件,所以,一个轻微的语法错误会造成你整个网站的故障,所以,在你修改或是替换原有的文件时,一定要备份旧的文件,以便出现问题的时候可以方便的恢复。
1. 使用.htaccess 创建自定义的出错页面。对于Linux Apache来说这是一项极其简单的事情。使用下面的.htaccess语法你可以轻松的完成这一功能。(把.htaccess放在你的网站根目录下)
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
这篇文章包括了16个非常有用的小技巧。另外,因为.htaccess 是一个相当强大的配置文件,所以,一个轻微的语法错误会造成你整个网站的故障,所以,在你修改或是替换原有的文件时,一定要备份旧的文件,以便出现问题的时候可以方便的恢复。
1. 使用.htaccess 创建自定义的出错页面。对于Linux Apache来说这是一项极其简单的事情。使用下面的.htaccess语法你可以轻松的完成这一功能。(把.htaccess放在你的网站根目录下)
ErrorDocument 401 /error/401.php
ErrorDocument 403 /error/403.php
ErrorDocument 404 /error/404.php
ErrorDocument 500 /error/500.php
9月26
我们常常通过301重定向可促进搜索引擎优化效果,下面请看说细的说明和给出来的代码。从搜索引擎优化角度出发,301重定向是网址重定向最为可行的一种办法。当网站的域名发生变更后,搜索引擎只对新网址进行索引,同时又会把旧地址下原有的外部链接如数转移到新地址下,从而不会让网站的排名因为网址变更而收到丝毫影响。同样,在使用301永久性重定向命令让多个域名指向网站主域时,亦不会对网站的排名产生任何负面影响。
302重定向可影响搜索引擎优化效果,迄今为止,能够对302重定向具备优异处理能力的只有Google。也就是说,在网站使用302重定向命令将其它域名指向主域时,只有Google会把其它域名的链接成绩计入主域,而其它搜索引擎只会把链接成绩向多个域名分摊,从而削弱主站的链接总量。既然作为网站排名关键因素之一的外链数量受到了影响,网站排名降低也是很自然的事情了。
当不能控制服务器且不支持自定义.htaccess或http.ini文件,或者需要根据动态的条件进行跳转,可以用动态程序实现301,linux主机一 般支持.htaccess,所以可以用.htaccess文件来进行301重定向,如果非linux主机空间不支持.htaccess文件,那么我们还可以通过php/asp/jsp代码来进行301重定向,不管 jsp asp php 程序原理都是一样的,即设置头部状态码和要跳转目标URL,发送头部就行了。
PHP:
在 index.php 的最顶部加入以下几行:
302重定向可影响搜索引擎优化效果,迄今为止,能够对302重定向具备优异处理能力的只有Google。也就是说,在网站使用302重定向命令将其它域名指向主域时,只有Google会把其它域名的链接成绩计入主域,而其它搜索引擎只会把链接成绩向多个域名分摊,从而削弱主站的链接总量。既然作为网站排名关键因素之一的外链数量受到了影响,网站排名降低也是很自然的事情了。
当不能控制服务器且不支持自定义.htaccess或http.ini文件,或者需要根据动态的条件进行跳转,可以用动态程序实现301,linux主机一 般支持.htaccess,所以可以用.htaccess文件来进行301重定向,如果非linux主机空间不支持.htaccess文件,那么我们还可以通过php/asp/jsp代码来进行301重定向,不管 jsp asp php 程序原理都是一样的,即设置头部状态码和要跳转目标URL,发送头部就行了。
PHP:
在 index.php 的最顶部加入以下几行:
9月26
一、page 对象
page对象代表jsp本身,更准确地说它代表jsp被转译后的servlet,它可以调用servlet类所定义的方法。
二、config 对象
config 对象里存放着一些servlet 初始的数据结构。
config 对象实现于javax.servlet.servletconfig 接口,它共有下列四种方法:
public string getinitparameter(name)
public java.util.enumeration getinitparameternames( )
public servletcontext getservletcontext( )
public sring getservletname( )
page对象代表jsp本身,更准确地说它代表jsp被转译后的servlet,它可以调用servlet类所定义的方法。
二、config 对象
config 对象里存放着一些servlet 初始的数据结构。
config 对象实现于javax.servlet.servletconfig 接口,它共有下列四种方法:
public string getinitparameter(name)
public java.util.enumeration getinitparameternames( )
public servletcontext getservletcontext( )
public sring getservletname( )
9月26
tomcat是只支持web应用系统,所以采取struts+hibernate或tapestry+hibernate(或者中间加上spring/jdon)都属于web应用系统,他们都是单机stand-alone系统,利用上述tomcat的负载平衡只能勉强支撑两三台服务器,而且随着访问量增加,tomcat等web服务器将趋于缓慢,从这篇文章观点来看,web应用程序在性能的伸缩性不太高。下面讨论的都是因为使用ejb后而使得你的应用程序自动获得的能力:
以weblogic jboss为主的采取的paired servers 对服务器复制策略则要提高性能很多,但是对load balancer算法要求高,有些普通的load balancer不一定符合要求。ibm采取的是中央状态服务器策略;而sun则采取的是特殊数据库复制hadb策略。
该文最后分析了jndi ejb和jms的集群原理,实际也是阐述了从性能集群原理上说,为什么会诞生ejb等复杂技术以及对于一些大型应用为什么需要使用ejb的原因所在。文章还否定了这样的观点:单机系统几乎可以透明的迁移到集群结构。在迁移时,需要考虑很多问题,如状态/缓存 httpsession以及特殊的服务等。
以weblogic jboss为主的采取的paired servers 对服务器复制策略则要提高性能很多,但是对load balancer算法要求高,有些普通的load balancer不一定符合要求。ibm采取的是中央状态服务器策略;而sun则采取的是特殊数据库复制hadb策略。
该文最后分析了jndi ejb和jms的集群原理,实际也是阐述了从性能集群原理上说,为什么会诞生ejb等复杂技术以及对于一些大型应用为什么需要使用ejb的原因所在。文章还否定了这样的观点:单机系统几乎可以透明的迁移到集群结构。在迁移时,需要考虑很多问题,如状态/缓存 httpsession以及特殊的服务等。
9月26
1、认真考虑是否真要使用j2ee
这个很重要,非常重要。j2ee涵盖的内容大而全,但很多不一定就是具体实际项目需要的。象ejb级的权限控制,如果你的表现层(大部分项目就是web server)和应用服务器不存在信任问题,那么基本上就不用考虑。又比如伸缩性,如果同时在线最多不超过100个,就没什么用处。针对项目的实际情况选择效费比最合适的解决方案,而不要为了应用先进技术而应用先进技术。
2、选择合适的分布模型
提起分布,很多人可能都会有这样的设想:server a处理认证,server b处理订单,server c处理仓储;如果b的负载太大,那么再细分一下:录入、修改部分的ejb部署在server d,统计、分析部分的部署在server e,等等。其实没有必要,我的体会是:除非业务必须(如分支机构统一通过总部的app server来进行权限验证),否则最好将所有的应用全部放在一个app server中,能在一个进程空间内更好(使用home interface),然后进行平行的分布?d?d即集群中的所有app server功能上都是等价的。相比前一种垂直(或者网状)分布,平行分布的可靠性、容错能力、伸缩能力都要更好,同时减少了部署、管理负担。最重要的是,减少了因为业务逻辑层内部跨进程调用引起的开销,提高了整体性能。然而,如果a、一些业务逻辑必须相互独立部署、管理,b、负载较为集中地分布在若干个ejb中,那么,垂直分布还是必不可少的。
3、为entity bean选择合适的数据存储方案
首先尽量使用cmp管理数据存储,尤其是简单的,大部分业务操作都是插入删除修改的实体,不然光insert update就够你忙的了,更不用说数据库移植问题。其次对于简单的一对一、一对多关系,如果你的app server没有实现ejb2.0规范,可以考虑使用o/r映射工具帮助开发,象cocobase, ejb creator等等,可以提高不少效率。对于复杂的对象存储,没办法,老老实实写代码吧……
这个很重要,非常重要。j2ee涵盖的内容大而全,但很多不一定就是具体实际项目需要的。象ejb级的权限控制,如果你的表现层(大部分项目就是web server)和应用服务器不存在信任问题,那么基本上就不用考虑。又比如伸缩性,如果同时在线最多不超过100个,就没什么用处。针对项目的实际情况选择效费比最合适的解决方案,而不要为了应用先进技术而应用先进技术。
2、选择合适的分布模型
提起分布,很多人可能都会有这样的设想:server a处理认证,server b处理订单,server c处理仓储;如果b的负载太大,那么再细分一下:录入、修改部分的ejb部署在server d,统计、分析部分的部署在server e,等等。其实没有必要,我的体会是:除非业务必须(如分支机构统一通过总部的app server来进行权限验证),否则最好将所有的应用全部放在一个app server中,能在一个进程空间内更好(使用home interface),然后进行平行的分布?d?d即集群中的所有app server功能上都是等价的。相比前一种垂直(或者网状)分布,平行分布的可靠性、容错能力、伸缩能力都要更好,同时减少了部署、管理负担。最重要的是,减少了因为业务逻辑层内部跨进程调用引起的开销,提高了整体性能。然而,如果a、一些业务逻辑必须相互独立部署、管理,b、负载较为集中地分布在若干个ejb中,那么,垂直分布还是必不可少的。
3、为entity bean选择合适的数据存储方案
首先尽量使用cmp管理数据存储,尤其是简单的,大部分业务操作都是插入删除修改的实体,不然光insert update就够你忙的了,更不用说数据库移植问题。其次对于简单的一对一、一对多关系,如果你的app server没有实现ejb2.0规范,可以考虑使用o/r映射工具帮助开发,象cocobase, ejb creator等等,可以提高不少效率。对于复杂的对象存储,没办法,老老实实写代码吧……
9月26
远程连接MYSQL的时候,提示以下错误。
Error: Client does not support authentication protocol requested by server; consider upgrading MySQL client
解决方法:
先用root登录MYSQL服务器,执行:
mysql>set password for user@"localhost"=old_password('yourPassword');
Error: Client does not support authentication protocol requested by server; consider upgrading MySQL client
解决方法:
先用root登录MYSQL服务器,执行:
mysql>set password for user@"localhost"=old_password('yourPassword');
9月26
网站优化是个系统工程,工作量并不小,不是一蹴而就的,需要大量的积累和尝试。而内部结构又是网站优化的主要部分,这里就主要的注意事项总结出来,供大家参考。首先就是将网站本身进行优化。
一、是标题title的重新定位,标题中需要包含有优化关键字的内容,同时网站中的多个页面标题不能雷同,起码要能显示“关键字——网站首页——一段简单的含关键字的描述”类型。标题一旦确定就不要再做修改!
二、是网站内部的链接结构,尽量改变原来的图像链接和flash链接,使用纯文本链接,并定义全局统一链接位置。
三、是每个页面包含有关键字并保持一定的频率。
简单做好了内容结构的调整之后,立即到搜索引擎登录,希望能尽早收录新标题和新描述。
网站结构做细节调整
一、是标题title的重新定位,标题中需要包含有优化关键字的内容,同时网站中的多个页面标题不能雷同,起码要能显示“关键字——网站首页——一段简单的含关键字的描述”类型。标题一旦确定就不要再做修改!
二、是网站内部的链接结构,尽量改变原来的图像链接和flash链接,使用纯文本链接,并定义全局统一链接位置。
三、是每个页面包含有关键字并保持一定的频率。
简单做好了内容结构的调整之后,立即到搜索引擎登录,希望能尽早收录新标题和新描述。
网站结构做细节调整







