转到正文

浪淘沙

静观己心,厚积薄发

session共享一般使用的方法有两个:

1、NFS或者Samba共享的方法,让各个服务器上存放session文件的磁盘共享,这种方法简单可行。

2、集中存储到数据库中,这是比较多的实现方法,通过php提供的session_set_save_handler()函数来重定义session函数,推荐使用这种方法。

下面再对session共享问题进行稍微详细的阐述。

session共享用简单的一句话就是:“多服务器共享客户端的 SESSION ID,同时还必须共享服务器端的 SESSION 数据。

第一个目标的实现其实很简单,只需要对 COOKIE 的域(domain)进行特殊地设置即可,默认情况下,

COOKIE 的域是当前服务器的域名/IP 地址,而域不同的话,各个服务器所设置的 COOKIE 是不能相互访问

的,如 www.aaa.com 的服务器是不能读写 www.bbb.com 服务器设置的 COOKIE 的。

这里我们所说的同一网站的服务器有其特殊性,那就是他们同属于同一个一级域,如:aaa.infor96.com

和 www.infor96.com 都属于域 .infor96.com,那么我们就可以设置 COOKIE 的域为 .infor96.com,这样

aaa.infor96.com、www.infor96.com 等等都可以访问此 COOKIE。PHP 代码中的设置方法如下:

 <?php ini_set('session.cookie_domain', '.infor96.com'); ?> 

这样各个服务器共享同一客户端 SESSION ID 的目的就达到了。

阅读全文

SESSION 用百度百科的定义为:在计算机中,尤其是在网络应用中,称为“会话”。

SESSION分为客户端session和服务器端session。

当用户首次与Web服务器建立连接的时候,服务器会给用户分发一个 SessionID作为标识。SessionID是一个由24个字符组成的随机字符串。用户每次提交页面,浏览器都会把这个SessionID包含在 HTTP头中提交给Web服务器,这样Web服务器就能区分当前请求页面的是哪一个客户端。这个SessionID就是保存在客户端的,属于客户端Session。

其实客户端Session默认是以cookie的形式来存储的,所以当用户禁用了cookie的话,服务器端就得不到SessionID。这时我们可以使用url的方式来存储客户端Session。也就是将SessionID直接写在了url中,当然这种方法不常用。
我们经常说的session其实就是服务器端session。

阅读全文

1、CRC校验
CRC全称Cyclic Redundancy Check,又叫循环冗余校验。它是一种散列函数(HASH,把任意长度的输入通过散列算法,最终变换成固定长度的摘要输出,其结果就是散列值,按照HASH算法,HASH具有单向性,不可逆性),用来检测或校验传输或保存的数据错误,在通信领域广泛地用于实现差错控制,比如通信系统多使用CRC12和CRC16,XMODEM使用CRC16等等(12、16、32等值均是指多项式的最高阶N次幂),天缘早前在做通信方面工作时也是最常用到这个校验方法,因为其编解码方法都非常简单,运算时间也很短。

但从理论角度,CRC不能完全可靠的验证数据完整性,因为CRC多项式是线性结构,很容易通过改变数据方式达到CRC碰撞,天缘这里给一个更加通俗的解释,假设一串带有CRC校验的代码在传输中,如果连续出现差错,当出错次数达到一定次数时,那么几乎可以肯定会出现一次碰撞(值不对但CRC结果正确),但随着CRC数据位增加,碰撞几率会显著降低,比如CRC32比CRC16具有更可靠的验证性,CRC64又会比CRC32更可靠,当然这都是按照ITU规范标准条件下。

正因为CRC具有以上特点,对于网络上传输的文件类很少只使用CRC作为校验依据,文件传输相比通信底层传输风险更大,很容易受到人为干预影响。

详情请访问:http://wenku.baidu.com/view/fb791c0203d8ce2f006623f5.html

2、MD5
MD全称Message Digest,又称信息摘要算法,MD5从MD2/3/4演化而来,MD5散列长度通常是128位, 也是目前被大量广泛使用的散列算法之一,主要用于密码加密和文件校验等。MD5的算法虽然非常“牢靠”,不过也已经被找到碰撞的方法,网上虽然出现有些碰撞软件,但可以肯定,实际作用范围相当有限,比如,及时黑客拿到了PASSWORD MD5值,除了暴力破解,即使找到碰撞结果也未必能够影响用户安全问题,因为对于密码还要限定位数、类型等,但是如果是面向数字签名等应用,可能就会被破解掉,不过,MD5同下文的SHA1仍是目前应用最广泛的HASH算法,他们都是在MD4基础上改进设计的。
详情请访问:http://baike.baidu.com/view/7636.htm

3、SHA1
SHA全称Secure Hash Standard,又称安全哈希标准,SHA家族算法有SHA-1、SHA-224、SHA-256、SHA-384和SHA-512(后四者通常并称SHA2),原理和MD4、MD5 原理相似,SHA是由美国国家安全局(NSA)所设计,由美国国家标准与技术研究院(NIST)发布。SHA可将一个最大2^64位(2305843009213693952字节)信息,转换成一串160位(20字节)的散列值(摘要信息),目前也是应用最广泛的HASH算法。同MD5一样,从理论角度,SHA1也不是绝对可靠,目前也已经找到SHA1的碰撞条件,但“实用”的碰撞算法软件还没出现。于是美国NIST又开始使用SHA2,研究更新的加密算法。

详情请访问:http://baike.baidu.com/view/1228622.htm

阅读全文

以下为个人简单的描述。

一、fcitx输入法的安装

在命令行输入: sudo apt-get install im-switch  fcitx

ps:im-switch是用于输入法切换的。

再输入命令(将fcitx作为默认的输入法): im-switch -s fcitx -z default  

二、fcitx输入法乱码问题的解决方案

但是在ubunt 里面貌似一直有乱码问题,发现子都是口,让人很郁闷,这需要改 ~/.fcitx/config文件,这个文件你在文件系统里是找不到的。用gedit带开 gedit ~/.fcitx/fconfig 打开是乱码,因为是GBK编码,在Ubuntu中显示不正常。我们可以转换以下。
cd ~/.fcitx
iconv -f gbk -t utf-8 config>config.tmp 转换一下,然后在编辑config.tmp文件
显示字体(中)=WenQuanYi Micro Hei
显示字体大小=10
使用粗体=0
然后保存关闭,在用config.tmp代替原来的config
iconv -f utf-8 -t gbk config.tmp>config
然后重启登录,估计fcitx就正常了

 

详情可以参考

http://www.liusuping.com/ubuntu-linux/ubuntu-fcitx-fangkuai-luanma.html

http://hi.baidu.com/wen122056/blog/item/4b414e5cda57c84efbf2c08d.html

http://hi.baidu.com/programmar/blog/item/89d61234833e05bdd1a2d33e.html

http://blog.felixc.at/2010/04/ubuntu-fcitx/

http://www.diybl.com/course/6_system/linux/ubuntu/20110826/558966.html

 

阅读全文

从window转到linux第一个遇到的文件应该就是权限的问题。和window(特别是xp)不同的linux的目录和文件都是有其访问权限的。引用百度百科的一句话就是:“Linux系统中的每个文件和目录都有访问许可权限,用他来确定谁能通过何种方式对文件和目录进行访问和操作。 文件或目录的访问权限分为只读,只写和可执行三种。”。

一、linux文件权限

每个linux文件(在linux下目录也属于一种文件,详情?)都具有四种权限,r(可读  Readable),w(可写  writable), x (可执行 eXecute )和 -(无权限)。使用 我们可以 `ls -l` 这个命令来查看某个文件或者目录的权限。它以显示数据的第一个字段为
准。第一个字段由10个字符组成,如下:
rwxr-xr-x

其中 第一个字符表示当前文件的类型(“-” 表示普通文件,“ d” 表示目录文件,“ l” 表示链接文件,“c”表示字符设备,“b”表示块设备,“p”表示命名管道比如FIFO文件(First In First Out, 先进先出),“ f”表示堆栈文件比如LIFO文件(Last In First Out,后进先出)。

第2、3、4个字符表示当前文件/目录拥有者的存取权限,有时我们也简称此权限为u (User)的权限——u权限。

第5、6、7个字符表示此档案拥有者所属群组成员的存取权限,例如此档案拥有者属於 admin j群组’而此群组中有10个成员,则表示这10个成员都拥有此处指定的权限,有时我们也简称此权限为g (Group)的权限——g权限。

第8、9、10表示此档案拥有者所属群组之外的使用者存取权限,行时我们也简称此权限为o (Other)的权限——o权限。

注意:这9 个字符(第2到第10个字符)的权限总和有时我们也简称为 a (All)的权限——a权限。

二、修改目录、文件的访问权限 chmod (Change Mode)

1. 用数字表示法修改权限
所谓数字表示法,是指将rwx分别用421来代表,没有授予权限的则为0,
然后把权限相加,如下

 原始权限  转换为数字  数字表示法
 rwxrwxr-x  (421)(421)(401)  775
 rwxr-xr-x  (421)(401)(401)  755

修改权限的例子:将文件test的权限修改为所有者和组成员具有读写的权限,其他
人只有读权限
chmod 664 test

2. 用文本表示法修改权限
文本表示法用4个字母表示不同的用户:
u:所有者
g:组成员
o:其他成员
a:所有人
权限仍用r、w和x表示

和数字表示法不同,文本表示法不仅可以重新指定权限,也可以在原来权限的基础上
增加或减少权限,如下:
=:重新制定权限
-:对目前的设置减少权限
+:对目前的设置增加权限

例子:讲上述例子中,所有者加上执行权限,组成员减少执行权限,其他成员设置为
执行权限,执行以下命令
chmod u+x,g-x,o=x test

注意:逗号前后不能有空格

三、目录权限
目录权限的修改和文件权限修改不同,只是四种权限代表的含义如下:
r:可列出目录中的内容
w:可在目录中创建、删除和修改文件
x:可以使用cd命令切换到此目录
-:没有任何此目录的访问权限

注意:目录可以使用通配符”*”来表示目录中的所有文件,如将/test目录中的所有文件
的权限设置为任何人都可以读写
chmod 666 /test/*

四、指定文件的默认权限掩码—–umask
权限掩码有4个八进制的数字组成,讲现有的权限减掉权限掩码后,即可产生此文件建立
时的默认权限。
一般来说,新建文件的默认值是0666,新建目录的默认值是0777,如果将全线掩码设置
为0002,则每个新建文件的默认权限为0666-0002=0664,而目录的默认权限则为775。
可以直接输入umask命令来检查目前的默认权限掩码,或输入”umask 权限掩码”来指定默
认权限掩码。
用umask的方式指定默认权限掩码,可以避免添加访问权限过大的文件或目录。

参考:

http://linux.chinaunix.net/techdoc/system/2006/07/19/936273.shtml

http://vbird.dic.ksu.edu.tw/linux_basic/0220filemanager.php

http://www.blogjava.net/pdw2009/archive/2008/11/19/70065.html

阅读全文

造成乱码的原因是因为编码和解码不一致导致的结果。想要不出现编码,需要做到以下几点:

1、文件的编码

2、浏览器默认的编码方式

3、html meta标签 Content-Type 设置的编码方式

只要办证以上3个都一致,就不会出现乱码问题。

前两天我又学到了一招: 如果文件又包含了其他文件(比如css,js,小功能模块文件),那么也需要这些文件也

必须文件编码已知,否则,在某些浏览器下面就会出现部分乱码的情况。
依次为记。。

阅读全文

js实现页面跳转的实现方式之一为:


window.location.href="需要跳转的URL";

使用这个方法,需要注意的一点就是:当前页面的URL 和 需要跳转到的URL 一样的话,当前页面并不会执行操作。如果需要页面必须刷新的话,可以使用下面的代码来实现:


var current_href = window.location.href;

var jump_href = "需要跳转的URL";

if (jump_href == jump_href)  {//2个URL一致,只需要刷新即可

window.location.reload();

} else {//2个URL不一致,直接设置location即可

window.location.href= jump_href;

}

 

如果想了解更多

关于location 请参考 http://baike.baidu.com/view/2131711.htm .

关于js 页面跳转 请参考 http://wenku.baidu.com/view/39e170868762caaedd33d46f.html

 

 

阅读全文

原文地址:http://blog.csdn.net/21aspnet/article/details/6729724

文章最后本人做了一幅图,一看就明白了,这个问题网上讲的不少,但是都没有把问题说透。

一、概念

对齐跟数据在内存中的位置有关。如果一个变量的内存地址正好位于它长度的整数倍,他就被称做自然对齐。比如在32位cpu下,假设一个整型变量的地址为0x00000004,那它就是自然对齐的。

阅读全文

原文地址:http://blog.csdn.net/shan9liang/article/details/7222110

————————————————————————————————————

如果你是一个Web开发初学者,那么你难免会在网上搜索HTML,CSS,XML,JS(Javascript),DOM,XSL等等这些词的意思,然而,随着学习的深入。当你把他们搅在一起,你又糊涂了,你会不停的问,HTML是什么?CSS是什么?XML是什么?JS是什么?它们到底有什么用?无论是网络百科,还是一些IT专题网站,又或者一些牛人博客,他们都会告诉你,某个单一的东西是什么,这类文章很多,但很少有涉及,它们组合起来是什么,有什么用。我想,我写这篇文章,就是为了说明一下这个他们很少涉及的问题。

阅读全文

原文地址:http://blog.csdn.net/v_july_v/article/details/7382693

前言

   一般而言,标题含有“秒杀”,“99%”,“史上最全/最强”等词汇的往往都脱不了哗众取宠之嫌,但进一步来讲,如果读者读罢此文,却无任何收获,那么,我也甘愿背负这样的罪名,:-),同时,此文可以看做是对这篇文章:十道海量数据处理面试题与十个方法大总结的一般抽象性总结。

    毕竟受文章和理论之限,本文将摒弃绝大部分的细节,只谈方法/模式论,且注重用最通俗最直白的语言阐述相关问题。最后,有一点必须强调的是,全文行文是基于面试题的分析基础之上的,具体实践过程中,还是得具体情况具体分析,且场景也远比本文所述的任何一种情况复杂得多。

阅读全文