工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.51099.com 注册 | 登陆
浏览模式: 标准 | 列表2007年08月的文章

伪装成Google Bot突破收费网站页面

为什么有的网站能够被Google搜索到,点击链接进去以后却显示“未注册”、“还不是会员”呢?这是一种网站专门针对对搜索引擎优化的技术。

那么我们也可以伪装成搜索引擎来进入这些页面。我们需要的是修改浏览器的User-Agent值。下面以Internet Explorer为例说明:

把下列代码保存为 ua.reg,双击导入到注册表中:
Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\5.0\User Agent]
@="Googlebot/2.1"
"Compatible"="+http://www.googlebot.com/bot.html"
这样我们就可以突破一些被封锁的收费内容页面了。
 
Firefox用户可以去下载一个名字为 Agent-Switcher的插件,把User-Agent修改成 Googlebot/2.1 (http://www.googlebot.com/bot.html) 就行了。
 
转载的 . 觉得这还是有一定创意的.

腾讯仅仅是简单的抄袭吗?

有一种声音:“腾讯就是个抄袭专家”
从腾讯推出qq休闲游戏到最近滔滔的上线,这种声音经常会出现在我们的视听中。
那我们就来分析一下腾讯的“抄袭”历程,看看腾讯是怎么抄得。
腾讯的OICQ是借鉴了以色列Mirabilis公司的ICQ,但是随后的腾讯与Mirabilis走的是截然相反的两条道路:
1、Mirabilis的ICQ在98年被AOL以2.87亿美元收购后,影响力却日趋下降;ICQ至今为止在欧洲、亚洲和南美的用户总数不过几千万。
2、腾讯推出QQ后的四年时间里注册用户突破1亿,据07年5月的相关统计显示QQ注册用户总数多达5.9亿,同时在线人数突破3千万,腾讯公司市值621.7亿港元。
所谓原创的一直在惨淡营生,而所谓抄袭的却突飞猛进一路高歌。原因何在?
而与之类似的情况在随后的几年中反复的上演:四年前腾讯开始做门户,现在流量第一;做休闲游戏,将业界老大联众取而代之;进入网游后成长势头凶猛,让盛大、网易开始警惕;拍拍又让马云、王志东等紧张万分;原因又何在?
我们再看看国外的“抄袭专家”微软是如何抄的:
微软是“抄袭门”的常客,例如:旗下的windows操作系统经常被苹果指责抄袭、还有微软新推出的地图软件“虚拟地球”也被指“抄袭”google的卫星地图“google earth”。但是似乎看似凑巧的是,在微软每次“抄袭门”事件中的时候,微软就向前更迈进一步,因为他们那些被指责为“抄袭”的产品饱受市场好品为微软创造了一个接一个的利润高峰。原因更是何在?
“抄袭”是一种不道德的行为当然会为众人所不耻,但是往往被指“抄袭”的那一方却总是胜过“原创”,要不然“原创者”不会恼火。之所以会出现这种情况的原因在于被指“抄袭”者并非正真的抄袭,反而他是做出了创新;因为仅仅是简单的抄袭是绝对不会胜过“原创”的。这种巧妙的“抄袭”是把一种技术发明改造成能够解决实际问题的创新。
创新在英语中的解释是“create”和“innovate”, create指得是创造、创作,是一种从无到有的创作。Innovate的含义除了这层外还有改变和革新的意思。现如今我们需要的就是innovate的精神,毕竟能create的人还是很稀缺的。
其实腾讯所走的路,自然都是每个企业都要走的路,因为任何一个企业很难做到每个产品都是自己原创,即使如此也可能陷入“抄袭门”,如何去应对呢?腾讯的这种创新给他们指了一条很好的捷径。其他的企业能不能走好,有没有innovate式的创新精神是个关键。

linux下的swap

具体例子:
———————————————————————————————————
#dd if=/dev/zero ōf=swapfile bs=1024 count=8192
#mkswap swapfile 8192
#sync
#swapon swapfile
——————————————————————————————————
解释:
dd if=/dev/zero ōf=/swap bs=1024 count=131070
 
/swap为文件名    count 为文件大小
 
 
mkswap命令建立swap分区
mkswap 在一个设备上或者在一个文件里创建一个linux交换区。
请一定小心使用mkswap , 因为它不检查文件或分区是否被其他东西使用。 你可能用mkswap 很容易地覆盖了重要文件和分区! 幸好,你只需在你安装系统时使用mkswap ,后可以跟文件大小,是单位是块。
mkswap /swap
 
swapon  /swap
启用/swap 作为虚拟内存
 
swapoff /swap
//关闭swap作为虚拟内存
rm /swap  //删除文件
 
 
对换空间如果列入/etc/fstab ,就可自动使用。
/dev/hda8 none swap sw 0 0
/swapfile none swap sw 0 0
 
附:
dd 是 Linux/UNIX 下的一个非常有用的命令,作用是用指定大小的块拷贝一个文件,并在拷贝的同时进行指定的转换。
dd 的主要选项:
指定数字的地方若以下列字符结尾乘以相应的数字:
b=512, c=1, k=1024, w=2, xm=number m
if=file
输入文件名,缺省为标准输入。
of=file
输出文件名,缺省为标准输出。
ibs=bytes
一次读入 bytes 个字节(即一个块大小为 bytes 个字节)。
obs=bytes
一次写 bytes 个字节(即一个块大小为 bytes 个字节)。
bs=bytes
同时设置读写块的大小为 bytes ,可代替 ibs 和 obs 。
cbs=bytes
一次转换 bytes 个字节,即转换缓冲区大小。
skip=blocks
从输入文件开头跳过 blocks 个块后再开始复制。
seek=blocks
从输出文件开头跳过 blocks 个块后再开始复制。(通常只有当输出文件是磁盘或磁带时才有效)
count=blocks
仅拷贝 blocks 个块,块大小等于 ibs 指定的字节数。
c[,conversion...]
用指定的参数转换文件。
转换参数:
ascii 转换 EBCDIC 为 ASCII。
ebcdic 转换 ASCII 为 EBCDIC。
ibm 转换 ASCII 为 alternate EBCDIC.
block 把每一行转换为长度为 cbs 的记录,不足部分用空格填充。
unblock
使每一行的长度都为 cbs ,不足部分用空格填充。
lcase 把大写字符转换为小写字符。
ucase 把小写字符转换为大写字符。
swab 交换输入的每对字节。 Unlike the
Unix dd, this works when an odd number of
bytes are read. If the input file contains
an odd number of bytes, the last byte is
simply copied (since there is nothing to
swap it with).
noerror
出错时不停止。
notrunc
不截短输出文件。
sync 把每个输入块填充到ibs个字节,不足部分用空(NUL)字符补齐。
由于 dd 命令允许二进制方式读写,所以特别适合在原始物理设备上进行输入/输出。例如可以用下面的命令为软盘建立镜像文件:
dd if=/dev/fd0 ōf=disk.img bs=1440k
有趣的是,这个镜像文件能被 HD-Copy ,Winimage 等工具软件读出。再如把第一个硬盘的前 512 个字节存为一个文件:
dd if=/dev/hda ōf=disk.mbr bs=512 count=1

为php编译mcrypt函数(转)

为php编译mcrypt函数

网站的需要,php需要用到mcrypt函数,初步看了一下php的编译函数,很简单,就是增加--with-mcrypt编译参数就行,但你真的预编译的时候,他就会提示错误configure: error: mcrypt.h not found. Please reinstall libmcrypt,大致意思是你没有编译libmcrypt,我们只好先编译libmcrypt
 
到这里ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/下载libmcrypt-2.5.7.tar.gz,编译很简单,依旧是configure,make,make check,make install。

装完马上重新去编译php,安装非常顺利。

当然我是走了不少弯路,还以为要装mcrypt这个程序,装这个程序更加麻烦,除了要安装libmcrypt,还要安装mhash,装完这两个,记得修改ld.so.conf,这样mcrypt才能正常安装。由于可能php实际不需要这个,这里就不讲实际问题了,如果大家碰到问题,可来交流。

附:mcrypt-2.6.4的安装

1.先安装libmcrypt,前面已经阐述

2.安装mhash,去http://mhash.sourceforge.net/下载mhash,安装简单,不过我安装最新的0.9.4版本,在make check时候失败,所以我最后安装了个0.9.2版本。

3.安装mcrypt-2.6.4.tar.gz
如果你顺利安装了前2者,你才可以安装mcrypt-2.6.4.tar.gz,但在预编译的时候,你可能会碰到以下错误:configure: error: "You need at least libmhash 0.8.15 to compile this program. http://mhash.sf.net/" 按理你应该是安装了mhash,之所以他提这么的错误,我们可以初步分析为预编译的时候没找到lib文件所在的地址,所以我们可以这么做
cd mcrypt-2.6.4
LD_LIBRARY_PATH=/usr/local/lib ./configure
make
make install

如何安装Linux-NTFS


  安装和你的Linux版本和内核相对应的版本,这一点非常重要,否则将无法使用。
  通过“whichrpm”script 快速知道你的Linux版本和内核:
       # chmod 700 whichrpm
       # ./whichrpm
  
  接下来,我们再查看我们使用的是什么Release
      # cat /etc/redhat-release

  查看内核版本
      # uname -r
   
  查看你使用的CPU类型
      # rpm -q --queryformat "%{ARCH}\n" kernel

  现在你可以根据你得到的相应的参数,去http://www.linux-ntfs.org上下载相对应的版本了。

      # rpm -ivh kernel-module-ntfs-2.6.15-1.2054_FC5-2.1.26-0.rr.10.0.i686.rpm
  安装必须不报错!

   安装内核模块  # /sbin/modprobe ntfs
   显示内核日志  # dmesg | grep NTFS
                      NTFS driver v1.1.22 [Flags: R/O MODULE]
   
    检查内核是否支持ntfs  # cat /proc/filesystems

   至此,所有安装工作完成了,下面只要mount NTFS分区了,怎么做不用多说了吧,顺便说一下,如果你装错了版本,想Uninstall,请输入以下命令:
   # rpm -qa | grep -i ntfs
     kernel-module-ntfs-2.6.15-1.2054_FC5-2.1.26-0.rr.10.0  (你的可能和这个不一样)
   # rpm -e kernel-module-ntfs-2.6.15-1.2054_FC5-2.1.26-0.rr.10.0

译自:http://www.linux-ntfs.org

whichrpm脚本 http://data.linux-ntfs.org/rpm/whichrpm

有了这个模块就方便了,不用重新编译内核了,哈哈,爽呀

linux下i386,i486,i586,i686的区别

i386,i486,i586分别是针对80386,80486,80586编译的包,i686就比较广泛了,从p2开始x86处理器就进入了p6构架的时代,一直到现在都是p6架构。新架构的cpu向下兼容为旧架构编译的软件包.

 

i386.rpm与i686.rpm有什么区别?

x86体系结构虽然指令都一样,但是不同时代的具体实现,在编译优化上还是有自己的特点,而且后一代往往会多出一些指令,所以编译RPM时,可以针对不同的体系结构作不同的编译选项优化。

一般而言, 所有x86处理器都能执行386的指令集
80486处理器当然需要 486 的优化
Pentium 就是 586
PentiumPro (P6) 之后的统称为686, 包含了PentiumPro, PentiumII, PentiumIII和P4

出于效率考虑,在编译核心和glibc这样的软件包的时候,都是为不同体系结构编译不同的包,安装的时候选择适合自己机器的,以便得到最好的效率。

目前而言,只要有686的包,那就不必考虑386的包。

个进程能够打开最大文件句柄数

在Linux下,我们使用ulimit -n命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。
   对于一般的应用来说(象Apache、系统进程)1024完全足够使用。但是如何象squid、mysql、java等单进程处理大量请求的应用来说就有点捉襟见肘了。如果单个进程打开的文件句柄数量超过了系统定义的值,就会提到“too many files open”的错误提示。如何知道当前进程打开了多少个文件句柄呢?下面一段小脚本可以帮你查看:lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more  

  在系统访问高峰时间以root用户执行上面的脚本,可能出现的结果如下:# lsof -n|awk '{print $2}'|sort|uniq -c |sort -nr|more    131 24204   57 24244   57 24231   56 24264

  其中第一行是打开的文件句柄数量,第二行是进程号。得到进程号后,我们可以通过ps命令得到进程的详细内容。ps -aef|grep 24204 mysql  24204 24162 99 16:15 ?    00:24:25 /usr/sbin/mysqld

  哦,原来是mysql进程打开最多文件句柄数量。但是他目前只打开了131个文件句柄数量,远远底于系统默认值1024。

  但是如果系统并发特别大,尤其是squid服务器,很有可能会超过1024。这时候就必须要调整系统参数,以适应应用变化。Linux有硬性限制和软性限制。可以通过ulimit来设定这两个参数。方法如下,以root用户运行以下命令:ulimit -HSn 4096

  以上命令中,H指定了硬性大小,S指定了软性大小,n表示设定单个进程最大的打开文件句柄数量。个人觉得最好不要超过4096,毕竟打开的文件句柄数越多响应时间肯定会越慢。设定句柄数量后,系统重启后,又会恢复默认值。如果想永久保存下来,可以修改.bash_profile文件,可以修改 /etc/profile 把上面命令加到最后。(findsun提出的办法比较合理)

当他(她)不爱你的时候

当他不爱你的时候,无论过去他是否爱过后来却忘了,或者是否从未爱过。当你无法成为他心里的那个人的时候,他的心便不会记得你。虽然他知道你深爱他,但他宁可选择装作是不知道。

  当他不爱你的时候,请不要在你不开心、或者是遇到麻烦而彷徨的时候去打搅他。他那儿绝对不是你此刻应该的去处。也许他会在接到你的电话的时候,淡淡地安慰你几句,却也仅此而已。也许你会再想要一点什么,于是说:“我们见面吧。”而他肯定心有烦躁了。当他不爱你的时候,你的爱,你的人,就会显得廉价许多。你占了下风,这是人的本性。他会说:“好,不过我现在有点儿事情。晚一点的时候你再给我电话吧。或者我给你电话也可以。”而你这时千万不要当真,他只是找了个不是很高明的理由来搪塞你。请,不要真的去等,不要骗自己。

  当他不爱你的时候,请不要与他讲你的琐事,也许此刻,你不过是希望让彼此更熟悉一些。只是,他却无暇更是没有兴趣去了解你,你的生活,你的过去,你的长处短处与他又何干?即使讲了,他也很快会忘记的,就如他忘记你的生日、你的地址、你的电话一样。没有爱,于是你注定挤不进他的生命。即使,你要的哪怕只是一个很小很小的角落。

  当他不爱你的时候,请不要在他的面前流眼泪,不要在生病的时候告诉他。他无法给予你照顾和关心,至多是同情一下而已,请骄傲的你,不要放弃本来属于你的骄傲。虽然太多的人,在爱的面前丢失了太多。连站起来的勇气都没有,何来骄傲?只是,要记得,只有爱自己的人,才可以真正地去疼惜你。而不是,旁观的同情、怜悯。

  当他不爱你的时候,你的爱便是他的负担。请不要去计算自己的付出,不要希望有什么回报。爱着不爱自己的人,本身便是没有回报的。不要计较对与错,这样会快乐些。要记住,你与他之间的爱,是单方面的,你用心,他无心。所以,也不要怪他。因为也许他也想做好一些。对你不要那样的冷漠。其实,爱一个人,对一个人好。本来就是一种本能。对不起,他没有这样的本能。

  当他不爱你的时候,请不要失去自己的自信。因为爱一个人,并非他的优秀,而只是一种感觉。他让你有这样的感觉,于是你爱他。同样,他不爱你,也并非你不优秀。优秀,不是爱的理由。看看还有那么多爱自己的人,淡淡地微笑一下,也是异样甜美的。

  当他不爱你的时候,也一定要祝福他。有了爱,便不该有恨。爱是美好的,恨却丑陋。何必让生命中最美好的东西化作丑恶呢?也不要觉得不公平。关于离去,他失去的是一个爱他的人,而你失去了一个不爱你的人,却得到了一个重新生活,重新去爱的机会。请不要去想到“永远”,爱没有永远。你此刻深爱,却注定遥远的某一天也不再爱他。他只是比你早一步到达了这一天。当他不爱你的时候,请轻轻拥抱一下回忆里的温暖,轻柔地凝视凋谢的温柔。

  当他不再爱你的时候,亲爱的,请你深深呼吸,一生的路上,铺满了爱的花蕾,总有那么一朵属于你,不是安慰你。

Records:1312