﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-多读点书,少上会网-随笔分类-杂文转载</title><link>http://www.blogjava.net/aspirin/category/9110.html</link><description>JAVA_HOME</description><language>zh-cn</language><lastBuildDate>Mon, 20 Jul 2009 12:57:09 GMT</lastBuildDate><pubDate>Mon, 20 Jul 2009 12:57:09 GMT</pubDate><ttl>60</ttl><item><title>[转] 如果有一天 我突然用很奇怪的内容联系你 记得来救我！！</title><link>http://www.blogjava.net/aspirin/archive/2009/07/17/287102.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Fri, 17 Jul 2009 02:50:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2009/07/17/287102.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/287102.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2009/07/17/287102.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/287102.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/287102.html</trackback:ping><description><![CDATA[<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE></TITLE>
<META http-equiv=Content-Type content="text/html; charset=gb2312">
<META http-equiv=Content-Language content=zh-cn>
<META content="MSHTML 6.00.6000.16809" name=GENERATOR></HEAD>
<BODY style="CURSOR: auto">
<DIV id=blogDetailDiv style="FONT-SIZE: 16px">如果有一天 我突然用很奇怪的内容联系你 记得来救我！！ （转） 
<BR><SPAN style="FONT-SIZE: 16px; LINE-HEIGHT: 1.8em">大家一定要互相关照 我转一篇很实用的东西 
觉得这对大家都有用！！</SPAN><WBR> <BR><BR><SPAN 
style="FONT-SIZE: 16px; LINE-HEIGHT: 1.8em">敏感身边异常现象</SPAN><WBR> 
<BR><BR><BR><SPAN 
style="FONT-SIZE: 16px; LINE-HEIGHT: 1.8em">当你听到电话中，任何女性（尤其是老婆/家人/女朋友/亲密朋友，也可能是男性）： 
<BR><BR>· 正和你本人在一起，和已过世的人在一起，和出差/出国的人在一起，和任何不可能的人在一起，在XX地点.. · 任何不可能、异常、蹊跷的事 · 
跟你借钱，急用 · 电话异常挂断 （一定打回去，不能再通就更紧急危险） ——这是求救信号！ 立刻报警！ 救援！ 
<BR><BR>·不要以为她疯了，不要骂她有病，不要说她明明有钱，不要说出你和她的真实关系或任何真实、实际情况（以防是被迫用手机扬声器或是免提电话） <BR>· 
记住任何与地点信息（如在XX吃饭,XX商场——很可能在车库遇到危险；家——很可能入室抢劫） <BR>· 
她没说地点要尽量问详（在X家，问X哪个家,尽管X可能就一个家），她不正面回答要用只需表示肯定否定的一般疑问句尽量问出来 
<BR><BR>（btw，如果平时手机要没电了打电话时先说明，既是尊重对方也免得让对方误会或担心你有紧急情况。当然尽量不要让手机处于这种状态，耽误事且辐射比满电大n多倍） 
<BR><BR><BR><BR><BR>遇到明显异常的信息时，多一份留意，因为你的朋友正在向你呼救！ <BR>尤其是你，需要多小心了！ 
<BR><BR></SPAN><WBR><SPAN style="FONT-SIZE: 16px; LINE-HEIGHT: 1.8em">一、敏感身边异常现象 
<BR><BR>一妇女被劫持，正好其老公打电话过来，她在电话里应付了一通，说正与她妈妈外出。 
随后警察赶到，终于得救。原因即在于，她妈妈早已去世，她丈夫即意识到存在问题。 <BR><BR>而遗憾的是，我们多数人，没有这样敏捷的反应能力和应变能力。 
<BR><BR>附件是个事例，前不久在深圳也发生过一起类似事件： <BR><BR>一男驾车被绑架，他与歹徒周旋说没钱，只是小白领，歹徒要其打电话跟家人、朋友借。 
<BR>他很机警的跟家人、朋友每人借三、五千，当然有朋友立刻反应过来，他不可能找他们急借这么点钱。 <BR>结果他姐姐在大呼 
“你还跟我哭穷，你刚赚了钱”，一朋友也大叫“你小子一顿饭就 花三、五千” 等等，——酿成惨重后果。 
<BR><BR>所以遇事务必保持冷静，设法周旋，向外传递信息。 <BR><BR>若遇到明显异常的信息时，多一份留意，因为你的朋友正在向你呼救。 
<BR><BR>二、警惕入室盗窃 <BR><BR>昨夜遭遇持刀盗贼入室行窃，此刻我仍然惊魂未定，这是我亲身经历的事情，想给我身边的每一 
位朋友一个警觉，永远不要以为很多事情不会降临自己的身上，永远不要以为自己总是幸运的那一个，危险总是出现在我们丧失警觉的时候。 
<BR><BR>首先交待一下出事的地点及背景：为了迁就公司搬到了北四环以及照顾周末在北大读书人的老公，我们在望京的新家还没有装修好之前，租住在北大中关园教工宿舍，我家是在 
2楼。 <BR><BR>就在这里 7月26日凌晨3点左右，本来打着微微鼾声的先生突然说：“ 老婆你听到什么声音了吗”？ 迷迷糊糊的我说 “ 没有啊” 
<BR><BR>但是紧接着，先生喊了一声“嘿，干什么”，我也应声而起 “ 嘿” 。当时恐惧和正义的力量让我的声音非常大。 
<BR><BR>先生迅速关上卧室的门并反锁，两个人迅速穿上衣服，我走到凉台把窗户打开，当时想要是歹徒不要命的闯进来，我跟先生可以从窗户逃走，避免跟他搏斗。但是很快冷静下来，先生从阳台上喊保安，我开始打110。 
<BR><BR>110啊110这个从小被我熟记的救命电话号码，这个被我心中神圣而威严的保护伞，在我用手机拨了10几次后，仍然没有人工接通的迹象，电话接通后出现电脑声音， 
“ 这里是110报警台”然后持续44秒之后自动挂断，始终没有人应答。此刻，先生的手机不在房间内，卧室内也没有固定电话。 
<BR><BR>我急中生智，走到卧室门口隔着门大声说： <BR>“喂喂，110我要报警，嗯嗯 
..，我这里有人入室盗窃，目前盗贼还在室内，嗯嗯，是的，请马上过来吧” 
“我的地点啊，地点在北大中关园，XX楼，X单元，对对对，就是方正大厦的后边，好好，多长时间赶到，嗯好，你们马上赶到是吧，，嗯嗯，好好，我明白”“ 谢谢你们” 
而其实这一切都是我在自言自语。 <BR><BR>我走到阳台跟先生小声说，我 110压根没打通，刚才诈一下歹徒。然后两个人坐在床上，先生一个劲的对我说： 
“老婆，你看你平时老是不爱关窗户，万一我出差不在家，你怎么办啊” 我无言，只有惊恐，心里默念请菩萨保佑。 
<BR><BR>就这样大概过了将近20分钟，我们听着好像没有动静了，也担心是不是自己听错了，想着歹徒听了我之前的诈报警应该已经逃走了。彼此小声会意了歹徒可能藏身的地方，因为门口的左边就是家，在客厅门口和家门之间有个可以挂衣服和放鞋子的衣架，我们确信歹徒很可能藏身在衣架的后面。老公抄着凳子，但是我的武器只有是阳台上的木头衣架了，于是先生迅速打开门，凳子朝着衣架方向抡去，没有动静，我们打开客厅的灯，这个小小的1室1厅就尽收眼底了（房子是个长方形，北边是厕所，厨房，中间是小客厅，南边是卧室，卧室外面是凉台，南北通透，盗贼就是从厨房进来的）。 
<BR><BR>我走进厨房，发现原来放在厨房窗台上的两层小架子（平时会放一些洗菜的盆子方便面什么的）已经被移动到地下，我很佩服盗贼的技巧，居然把我很辛苦放在那里的小架子就轻易的挪到地上。厨房的窗户开着，先生的笔记本电脑和我的一个真皮手提包放在地上，先生的手机放在我的手提包。 
<BR><BR>回头看到客厅，果然在衣架的旁边，先生的西装在地上，厨房的菜刀也在那里。 <BR>天哪，如此胆大的盗贼，如此凶残的盗贼。 
<BR><BR>先生的笔记本电脑原本是在卧室的桌子上的，盗贼居然从我们的床前明目张胆来回取走了笔记本电脑。 
<BR><BR>此刻又注意到卧室门口有一条毛巾，那绝对不是我们的毛巾。后来分析是歹徒放在客厅门边，以 备主人发现关门，不能关死，这样他才可以顺利逃脱。 
<BR><BR>天哪，我开始回想今晚的一些反常迹象。我跟老公11：00多钟睡觉，大概凌晨2点多钟。感觉蚊子特别多，先生自责可能是自己放进来蚊子。而其实入夏以来，我们的房间里面还从来没有过一个 
蚊子。猜想盗贼可能1点多钟就已经开始进入厨房了，厨房的窗户开着放进来了蚊子。 
<BR>由于被蚊子咬醒了，先生起身给他还有我抹了花露水，过了一会，我还是睡不着，没开灯去了洗手间，推算大概2：20左右，这时发现卧室门口有个包，当时迷迷糊糊的我也没在意，反而把包挪了一下放在旁边，心里嘀咕是不是老公没把包放好，怎么可以放在门口的路上。从洗手间往卧室里面走，发现地上有个东西，由于我是高度近视也没想什么东西，想着可能是什么东西掉了，懒得拣了，踢到了旁边，事后发现那是歹徒的毛巾，防止门被锁死的。 
<BR><BR>先生用他的没被盗贼偷走手机终于拨通了110，3个防爆警察10钟之内就赶到了，这点我稍感欣慰，看到他们手中的枪，觉得踏实多了，可惜之前110没有打通；小区保安随后也来了，过了1个多小时，刑警来了，现场取了指纹，拍照，询问了事情发生的经过。说抱歉来迟了，因为派出所的人都出去 
—— 到一个自杀现场去了，天哪，我没想到身边会有这么多的事情。之后刑警帮助我们 <BR><BR>总结的如下经验： 
<BR><BR>1.110的系统是从总局到分局分层下达的，偶尔110系统也会出问题，出现我之前无法到达人工接听的情形，或者110非常繁忙无法及时接听，应该记得自己被管辖派出所的电话，直接打派出所的电话是最快最好的方式。所以请大家牢记自己所在派出所的电话，避免出现紧急事务无法到达110的情况。 
<BR><BR>2. 晚上的门窗务必关好，天再热也不能放松警惕，盗贼就是这样乘虚而入的，不要以为这样的事情离你很遥远，其实盗贼就在你身边。 
<BR><BR>3.遇到入室盗贼尽量不要与其搏斗（除非你是警察或者有专业搏斗训练），按照刑警的经验，盗贼都是持刀入室的，前不久颐和山庄一个保姆发现盗贼入室而被刺死。并非不信任我们的警察侦破能力，这样的被害与虚意被谋杀是两回事情，除了现场指纹等，没有什么有效的线索帮助他们破案了。我们的生命远远贵重于我们的财产。提醒在遇到事情的时候首先自保。比如我们迅速关上反锁卧室门，而不是急于求证歹徒是否被吓走，或者与歹徒正面冲突。 
<BR><BR>4. 遇到事情不要惊惶，不防对歹徒使诈，事后刑警说我当时自言自语的电话，吓唬盗贼起了很大作用。 <BR><BR>&gt;5. 
尽量不要破坏案发现场，然后报警。 
<BR><BR>&gt;此刻的我想起客厅衣架旁边的菜刀，确信我去厕所的时候，歹徒就藏匿在那里并用先生的西装作遮挡（后来发现先生的西装是在地上的），我们去完厕所，盗贼等我们熟睡后准备逃离时候，被我们发现。一直庆幸我们去洗手间的时候没有发现持刀盗贼。万一当时惊动盗贼，生死未卜，此次钱物基本没有丢失，人身没有受到伤害，但是我昨夜难以入眠，此刻仍然惊魂未定。我检讨自己的大意，检讨自己总以为很多事情不会发生在自己的身上，事情绝非如此，无论何时当我们放松警惕的时候，危险可能就在我们身边。洋洋洒洒千言，并非危言耸听而是我亲身经历的事实，提醒我得朋友提高警惕，希望每个人都平平安安。请朋友们互相转告，一定注意安全。 
<BR><BR>三. 当事人已经够笨了，警察更笨 
<BR><BR>5月7号，我们单位有一个女生，在家里被人入室抢劫，身中13刀！肺被扎穿，经抢救终于活过来！同事去看她，带回她惊险的故事，我听了以后双腿发软、双腿发软。不是我脆弱，实在是太 
可怕了！ 
<BR><BR>这个女生一个人租住在一个比较老旧的小区，被歹徒盯了一个多月。夜里俩点歹徒用钥匙打开她的家门，把她掐醒、蒙上双眼、索要钱财。她一直合作，冷静而机智的与歹徒周旋，凌晨四点歹徒把她绑起来说是要出去联系买主把她的车卖了。这个女生在半小时后确认歹徒已经离开，挣扎着松绑、报警、给自己的弟弟打电话，然后吓木了的她在家里等待警方支援（这是她的致命失误！！）谁知歹徒又回来了，俩人在客厅面对面撞上了！！！ 
<BR><BR>歹徒惊慌失措，气急败坏质问她是否报警，她极力否认说只是给家人打了个电话搪塞过去。突然电话铃响了，她接，是110的确认电话。这个女生仍冷静机智，说“妈妈，我没事，我平安到家 
了”，谁知110的笨蛋一点都没职业素质，说：我不是你妈，是110，你刚才是不是报警了？我们确认一下！！（天哪，这个笨蛋！！！害死人哪！以后有危险谁还能相信警察？！！！）女生重复说妈妈我没事，你放心吧，把电话挂掉！ 
<BR><BR>歹徒已经起疑，女生陷入生死境地！这时候家里的电话又响了！是弟弟打来的！歹徒接了电话，弟弟以为是警察，说找***，然后问姐姐，忘了姐姐家在哪个桥拐了（这个慌乱糊涂的弟弟哟，就是这个电话害了姐姐呀）。可怜的姐姐又在编：**老师，我从老家回来太累了不太舒服，明天不上班了，跟您请个假！那个弟弟不明所以：我是弟弟呀我就问你在哪个桥拐？姐姐只好说***桥-------话还没说完，歹徒按下电话丧心病狂地朝她猛扎！！！！这个女生先还反抗，后来只能装死，直到歹徒离去。。。 
<BR><BR>三分钟后，警察赶到！在外面敲门说是接到报警电话。可怜的女生忍着剧痛爬去开门，警察看见 
地上躺这一个浑身是血的人，第一句话是：还是个大案！（我靠）女生报出自己的车号叫他们拦截歹徒，他们无一人出门侦查追踪！女生又让他们叫救护车，然后，弟弟终于赶到。。。。 
<BR><BR>警察打电话确认确实是现在的工作方式。因为110是总台，110接到报警电话后会转到出事地点的片警。但现在看来对于这类入室抢劫的案子还电话确认是有问题。我以前也没想到过类似问题。 
<BR><BR>注意：歹徒 tmd拿钥匙开门。看来还是需要一个插销之类的东西才保险。 <BR><BR>在家被抢后，换个地方等警察，人多的公共场合,也可以找邻居。 
<BR><BR>经验教训： <BR><BR>1，这样要紧的电话一定要打给很熟悉自己近况的人，而且反应要快。警察往往不可靠。 
<BR><BR>2，派出所或者公安局的电话一定要记牢，110有时候也不管用。不过可以考虑119。 
<BR><BR>昨晚我参加一个的安全防范的研习会，让我很惊叹！这场研习会是由一个叫Pat 
Malone的人主持，他是知名人士的保镳，也为FBI工作，并教授警察及海军的SEALS徒手格斗。 <BR><BR>以下建议非常实用，多看几次，受用无穷！ 
<BR><BR>1.警方的提醒 ： 手肘是身体最有力的部位。距离够近，就善用手肘！ <BR><BR>2.假如歹徒向你要皮夹或钱包， 
不要递给他，而是往远处丢去。歹徒很可能 对财物比对你有兴趣，他会去拿皮夹或钱包，这是你逃跑的机会。 往反方向拼命跑！！ 
<BR><BR>3.假如被丢进车子的后备厢：把车后灯踢破，手从洞中伸出去，用力挥手，驾驶人看不到你，但是其他人看得到。这个方法救过无数人命。 
<BR><BR>4.女性常常在购物、吃饭及下班後进入车子，然後就坐在驾驶座上处理事情（如记帐、列清单等）。千万不要这么做！ 
歹徒会藉机观察情势，闯入车内，拿枪威胁，控制你的行动。进入车内，立即锁门，驶离现场。 <BR><BR>5.在平面停车场及立体停车场的几个注意事项 ： 
<BR><BR>A.要警觉： 环顾四周；察看车内的副驾和后座。（接近车子时，留意车底。） 
<BR><BR>B.假如你的车停在箱型车旁，则应该从副驾车门进入你的车子。许多连续杀人犯都是趁著女性要进入车中时，将她们拖进箱型车中加害。 
<BR><BR>C.观察停放在你左右两边的车。如果有男性单独坐在最近的邻车内，最好回到购物中心或办公室，找男同事、保安或警察陪你回去。 
宁愿防患未然，也不要终生遗憾。 (大惊小怪总比丧命好。 ) 
<BR><BR>6.永远搭电梯，不要走楼梯。（楼梯间是一个可怕的地方，容易让人形单影支，变成最好的犯罪场所。) 
<BR><BR>7.假如歹徒有枪而你并没有受到他的控制， 一定要跑！ 一百次中，只有四次歹徒会袭击逃跑的目标；即使他攻击你，大多不会是致命的部位， 要跑！ 
<BR><BR>8.身为女性，我们总是发挥同情心： 不要再这样！ 这样会增加被强暴或是杀害的机会。一个叫泰得 · 
邦迪（TedBundy）的连续杀人犯就是一个相貌堂堂并且受过良好教育的人，总是利用女性的同情心。他走路时带著一根手杖或是跛行，经常要求别人「帮忙」他进入车内或是看一下他的车子，趁机绑架受害者。 
<BR><BR>最近有人告诉我，他的朋友在晚上听到门口有婴儿在哭，不过当时已经很晚了，而且她认为这件事很奇怪，於是她打电话给警察。 
警察告诉她：「无论如何，绝对不要开门。」这位女士表示那声音听起来像是婴儿爬到窗户附近哭，她担心婴儿会爬到街上，被车子碾过。警察告诉她：我们已经派人前往，无论如何不能开门。警方认为这是一个连续杀人犯，利用婴儿哭声的录音带，诱使女性以为有人在外面遗弃婴儿，骗她们出门察看。虽然尚未证实此事，但是警方已经接到许多女性打电话来说，他们晚上独自在家时，听到门外有婴儿的哭声，请将这个消息传给其他人，不要因为听到婴儿的哭声而开门。 
<BR><BR>请严肃看待 ， 因为上礼拜六「美国头号通缉犯」（America's Most Wanted）节目中，报导路易斯安那州的连续杀人犯时 ， 
提到了「哭泣婴儿」的假设 。 <BR><BR>请转寄这封信给你所有认识的女性朋友， 并一个接一个传下去 。 
<BR><BR>我原本只想把这封信转寄给女性朋友，但是男性朋友，假如你爱你的妈妈、太太、姊妹、女儿等等，你也应该把这个讯息传给他们 . 
<BR>觉得有用就顶一下吧，让更多的人知道这些知识</SPAN><WBR> <BR><!--v:3.2--></DIV></BODY></HTML>
<img src ="http://www.blogjava.net/aspirin/aggbug/287102.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2009-07-17 10:50 <a href="http://www.blogjava.net/aspirin/archive/2009/07/17/287102.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>女总裁告诉你：如何在商界生存和成长(转)</title><link>http://www.blogjava.net/aspirin/archive/2008/03/19/187336.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Wed, 19 Mar 2008 11:10:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2008/03/19/187336.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/187336.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2008/03/19/187336.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/187336.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/187336.html</trackback:ping><description><![CDATA[
		<p>　10多年前，在大洋彼岸的美国，有一个即将从商学院毕业的女孩，她是以下面的方法找工作、进入商界的。现在，这个女孩成了美国年轻一代商界女性的明星和楷模，并创建了属于自己的公司，被誉为“难以抗拒的商界女性”。 </p>
		<p>　　请看她如何讲述自己当年踏入商场的第一步—— </p>
		<p>　　“在商学院的最后一年里，我开始找工作的同时，就着手建立自己的职业关系网。像多数即将毕业的学生一样，我在商界没有什么熟人，因此不得不从零开始。我有一个详细地记载我找工作的笔记，并且每一页上都写着我想去工作的公司名称。每次我发一封信，打一个电话，或跟某个人谈一次话，我都记下日期、时间、通信的性质，以及接下来的步骤。（典型的a型性格）。（“a型性格”的人个性急躁、成功心切、善于进取、争强好胜）。 </p>
		<p>　　我有意向的大多数公司，我一个人也不认识。可是我不像其他毕业生那样给人力资源部打电，而是上网查看公司的网站，找到负责我感兴趣的部门的主管名字。我会直接给个人打电话，仅仅是为了弄清楚他或她是不是联系这份工作该找的人。不过，屡试不爽的是，那个人或者那个对待我像贵宾一样的助理，会给我另一位需要联系的主管名字。然后，我在与那位主管联系的时候，就会在我的邮件里赫然提到前面那位主管的名字： 您的同事某某建议我跟您联系。 马上就拉上了关系！ </p>
		<p>　　要是这一切听起来像精于算计，那真抱歉。可它就是那么管用。并且这也是，在我们一起毕业的同学里面，我怎么就能够得到最高的薪水！ </p>
		<p>　　在即将从研究生院毕业时，我想去工作的一家公司，就是萨柏瑞公司。这家公司开创了并紧追网上旅游预订服务的潮流，是美洲航空公司的母公司美利坚公司的一个分公司。秋季学期的时候，公司到德克萨斯基督教大学校园招人，可是我当时忙于功课，不知道有面试这回事。不过，当一位同学得到了该公司一份收入可观的工作后，我一下子来了兴趣。我决定将萨柏瑞公司也定为自己的目标。碰上这种情形，大多数人都会耸肩叹息： 咳，我错过了正式的招聘会，所以我机会了。 我可不这样。我决定运用已有的一点点关系接近该公司。 </p>
		<p>　　我父母有个邻居是美国航空公司的董事，我给他打电话，问他能否告诉我，要是我想在萨柏瑞公司找份工作该跟谁联系。他很热心，给了我几个人的名字。自然，我给每个人的信都用邻居的名字开头—— 执行副总裁乔治某某建议我跟您联系…… 这样的介绍把我从一大堆的求职者中分离了出来，让我比其他无名的求职者得到更多的关注。我相信，有的人给我回复，仅仅是看在我邻居的面子上，可是管它呢。最终，我得到了与合适的人面试的机会，并得到了一份业务分析师的工作。” 世界经理人博客<a href="http://blog.icxo.com">http://blog.icxo.com</a></p>
		<p>　　怎么样，这个女孩是不是有些不同凡响？她叫艾米·亨利（amy henry），上述文字摘自她不久前出版的一本畅销书——《女总裁告诉你：当代女性如何在商界成功》。 </p>
		<p>　　艾米·亨利曾在美国一些领先的it企业担任高管职，取得了骄人的业绩，然后建立了一家管理咨询公司，成为当今美国炙手可热的一位企管顾问。她服务、合作过的公司客户，包括ibm、摩根大通、美林证券、麦肯锡公司、伊士曼化学公司、斯伦贝谢、蓝十字保险公司等全球著名企业。艾米·亨利还频频受邀到美国和加拿大的许多电视台、大学、领导才能培训机构演讲，与人们分享自身的经历和体验，包括成功与失败，讲述现代女性如何在职场、商界获取升和成功。 </p>
		<p>　　艾米·亨利坦率地说，工作场所不是一个纯粹的能人的天下。换句话说，单单有业绩并不能保证你步步高升。光知道躲在角落里埋头干活，很可能会让别人抢了你的功劳，而你自己却仍然呆在老地方。如果你想发展，就必须让人知道你。 </p>
		<p>　　统治商界的不是女性（至少现在不是），如果我们想要与那些占统治地位的人一起捉迷藏，我们就不得不努力拼搏。对此，艾米·亨利感受很深。她认为，职场的规则长期以来都是男人们书写的，女性必须了解那些规则，并学会如何让那些规则为己所用。但女性应该心安理得地表现得像个女人而不是男人，并善于利用自己的女性资本取得对自己有利的结果。</p>
<img src ="http://www.blogjava.net/aspirin/aggbug/187336.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2008-03-19 19:10 <a href="http://www.blogjava.net/aspirin/archive/2008/03/19/187336.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>如果年轻时知道这些道理（转发）</title><link>http://www.blogjava.net/aspirin/archive/2008/03/19/187303.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Wed, 19 Mar 2008 09:11:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2008/03/19/187303.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/187303.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2008/03/19/187303.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/187303.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/187303.html</trackback:ping><description><![CDATA[
		<p>有些道理总要等到适当的年纪才能明白，人生的哲理总是来得太迟。</p>
		<p>（深有同感，当我为工作，生活中的错误而自责时，理智却清醒地告诉自己，这些教训我早已知晓，并且有无数前人用他们的人生为我做过证明，只能感叹一句：只有自己经历过，才会真正明白并记住它们。但是，细想，为什么我就不能尽可能地遵循自己并未经历但被人证明正确的真理呢？，试着去做吧，既然相信，为何不遵循，回头时，我会庆幸自己今天做出了这样的决定）</p>
		<p>（1）很多事情其实无关紧要（10年后再回首，有多少担忧，一笑置之，既如此，早点觉悟又有什么关系呢？） <br />（2）等待有把握时再去做一件事，往往意味着永远的等待（简单计划，立刻出发，不断修正） <br />（3）一个人能做的最大的冒险事情，就是乐意在公共场合经常暴露自己的愚昧。没有什么能比这样学得更快。“哎呀”, 也是一种乐趣。（习惯自嘲是一种优秀的品质，它证明你足够自信） <br />（4）盲目追赶潮流是对精神和智力的扼杀 你可以成为一个廉价的时尚木偶，也可以成为独一无二的你，这些都在于自己的选择。信仰不是群众的鸦片，流行才是。（最后这句话说的挺妙） <br />（5）如果有人抱怨你太特立独行，恭喜你，你正走在正确的路上（我希望自己足够与众不同，甚至我愿为了特立独行而特立独行）<br />（6）如果你将工作等同于生活，那么你将为工作而生活（深表赞同，工作是为了更好的生活）<br />（7）试图取悦别人是徒劳无益的做法 （如老罗所言：彪悍的人生不需要解释，我精力有限，在工作以外，把关注放在爱我的我爱的双亲，兄弟，女人身上吧）<br />（8）你不可能取悦、平息或改造一个混蛋 （小人难养，敬而远之，我不跟你玩了，这还不行，那就得流氓一点，以彼之道还施彼身了）<br />（9）接纳自己（因为自卑，悔恨，我还无法真正爱上自己，从思想，身体上去改造自己，希望这一天早点到来吧！）<br />（10）生活中，有时候形式就是内容</p>
<img src ="http://www.blogjava.net/aspirin/aggbug/187303.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2008-03-19 17:11 <a href="http://www.blogjava.net/aspirin/archive/2008/03/19/187303.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>李开复给中国大学生的五封信：做一个成功的人(转)</title><link>http://www.blogjava.net/aspirin/archive/2006/03/28/37919.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Tue, 28 Mar 2006 14:44:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2006/03/28/37919.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/37919.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2006/03/28/37919.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/37919.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/37919.html</trackback:ping><description><![CDATA[
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>第一封信：从诚信谈起</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　我在苹果公司工作时，曾有一位刚被我提拔的经理，由于受到下属的批评，非常沮丧地要我再找一个人来接替他。我问他：“你认为你的长处是什么？”
他说，“我自信自己是一个非常正直的人。”我告诉他：“当初我提拔你做经理，就是因为你是一个公正无私的人。管理经验和沟通能力是可以在日后工作中学习
的，但一颗正直的心是无价的。”我支持他继续干下去，并在管理和沟通技巧方面给予他很多指点和帮助。最终，他不负众望，成为一个出色的管理人才。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　与之相反，我曾面试过一位求职者。他在技术、管理方面都相当的出色。但是，在谈论之余，他表示，如果我录取他，他甚至可以把在原来公司工作时的
一项发明带过来。随后他似乎觉察到这样说有些不妥，特作声明：那些工作是他在下班之后做的，他的老板并不知道。这一番谈话之后，不论他的能力和工作水平怎
样，我都肯定不会录用他。原因是他缺乏最基本的处世准则和最起码的职业道德“诚实”和“讲信用”。如果雇用这样的人，谁能保证他不会在这里工作一段时间
后，把在这里的成果也当作所谓“业余之作”而变成向其他公司讨好的“贡品”呢？这说明：一个人品不完善的人是不可能成为一个真正有所作为的人的。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　最后想提的是一些喜欢贪小便宜的人。他们用学校或公司的电话打私人长途、多报销票。
也许有人认为，学生以成绩、事业为重，其他细节只是一些小事，随心所欲地做了，也没什么大不了的。然而，就是那些身边的所谓“小事”，往往成为一个人塑造
人格和积累诚信的关键。一些贪小便宜、耍小聪明的行为只会把自己定性为一个贪图小利、没有出息的人的形象，最终因小失大。对于这些行为，一言以蔽之，就是
“勿以恶小而为之”。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>
										<strong>第二封信：从优秀到卓越</strong>
								</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　一位企业的领导者在成功的基础上，要想进一步提高自己，使自己的企业保持持续增长，使自己的个人能力从优秀向卓越迈进，就必须努力培养自己在“谦虚”、“执著”和“勇气”这三个方面的品质。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　谦虚使人进步。许多领导者在工作中唯我独尊，不能听取他人的规谏，不能容忍他人和自己意见相左，这些不懂得谦虚谨慎的领导者也许可以取得暂时的
成功，但却无法在事业上不断进步，达到卓越的境界。这是因为，一个人的力量终究有限，在瞬息万变的商业环境中，领导者必须不断学习，善于综合他人的意见，
否则就将陷入一意孤行的泥潭，被市场所淘汰。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　执著是指我们坚持正确方向，矢志不移的决心和意志。无论是公司也好，还是个人也好，一旦认明了工作的方向，就必须在该方向的指引下锲而不舍地努力工作。在工作中轻言放弃或者朝三暮四的做法都不能取得真正的成功。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　成功者需要有足够的勇气来面对挑战。任何事业上的成就都不是轻易就可以取得的。一个人想要在工作中出类拔萃，就必须面对各种各样的艰难险阻，必
须正视事业上的挫折和失败。只有那些有勇气正视现实，有勇气迎接挑战的人才能真正实现超越自我的目标，达到卓越的境界。正如马克·吐温所说：“勇气不是缺
少恐惧心理，而是对恐惧心理的抵御和控制能力。”</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>
										<strong>第三封信：成功、自信、快乐</strong>
								</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　美国作家威廉·福克纳说过：“不要竭尽全力去和你的同僚竞争。你应该在乎的是，你要比现在的你强。”</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　中国社会有个通病，就是希望每个人都照一个模
式发展，衡量每个人是否“成功”采用的也是一元化的标准：在学校看成绩，进入社会看名利。尤其是在今天的中国，人们对一个人的成功的评价，更多地以个人财
富为指标。但是，有了最好的成绩就能对社会有所贡献吗？有名利就一定能快乐吗？</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　真正的成功应是多元化的。成功可能是你创造了新的财富或技术，可能是你为他人带来了快乐，可能是你在工作岗位上得到了别人的信任，也可能是你找到了回归自我、与世无争的生活方式。每个人的成功都是独一无二的。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>
										<strong>第四封信：大学应这样过</strong>
								</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　就读大学时，你应当掌握七项学习，包括自修之道、基础知识、实践贯通、培养兴趣、积极主动、掌控时间、为人处世。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　经过大学四年，你会从思考中确立自我，从学习中寻求真理，从独立中体验自主，从计划中把握时间，从表达中锻炼口才，从交友中品味成熟，从实践中赢得价值，从兴趣中获取快乐，从追求中获得力量。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　离开大学时，只要做到了这些，你最大的收获将是“对什么都可以拥有的自信和渴望”。你就能成为一个有潜力、有思想、有价值、有前途的中国未来的主人翁。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>
										<strong>第五封信：做个积极主动的你</strong>
								</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　如果你想做一个积极主动、对自己负责的人，我建议你立即行动起来，按照以下几点严格要求自己：</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　●以一整天时间，倾听自己以及四周人们的语言，注意是否有“但愿”“我办不到”
</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　●依据过去的经验，设想一下，自己近期内是否会遭遇一些令人退缩逃避的情况？这种情况处在你自己的影响范围之内吗？你应该如何本着积极主动的原则加以应对？请在脑海中一一模拟。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　●从工作或日常生活中，找出一个令你备感挫折的事情。想一想，它属于哪一类，是可以直接控制的事情，还是可以间接控制的事情，抑或根本无法控制的事情？然后在自己的影响范围内寻找解决方案并付诸行动。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　●锻炼自己积极主动的意识。在30天内，专注于自己影响范围内的事物，对自己许下承诺，并予以兑现；做一支照亮他人的蜡烛，而非评判对错的法
官；以身作则，不要只顾批评；解决问题，不要制造问题；不必怪罪别人或为自己文过饰非，不怨天，不尤人；别活在父母、同事或社会的荫庇之下，善用天赋的独
立意志，为自己的行为与幸福负责。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　只有积极主动的人才能在瞬息万变的竞争环境中赢得成功，只有善于展示自己的人才能在工作中获得真正的机会。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　最后，我将公司总裁的一段话赠给中国的学生：</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　你们的时间有限，所以不要浪费时间活在别人的生活里。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　不要被信条所惑———盲从信条是活在别人的生活里。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　不要让任何人的意见淹没了你内在的心声。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　最重要的，拥有跟随内心和直觉的勇气。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　你的内心与直觉知道你真正想成为什么样的人。</strong>
						</font>
				</font>
		</p>
		<p>
				<font class="font145">
						<font face="宋体">
								<strong>　　任何其他事物都是次要的。</strong>
						</font>
				</font>
		</p>
<img src ="http://www.blogjava.net/aspirin/aggbug/37919.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2006-03-28 22:44 <a href="http://www.blogjava.net/aspirin/archive/2006/03/28/37919.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>debian网上收集的学习资料（转）</title><link>http://www.blogjava.net/aspirin/archive/2006/03/28/37914.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Tue, 28 Mar 2006 14:40:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2006/03/28/37914.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/37914.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2006/03/28/37914.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/37914.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/37914.html</trackback:ping><description><![CDATA[
// 动态DHCP获得 <br /># 启动系统激活设备. <br /># Loop回环地址. <br />auto lo <br />iface lo inet loopback <br /># 启动系统激活设备. <br /># 网卡eth0设置为DHCP类型. <br />auto eth0 <br />iface eth0 inet dhcp <br /><br />// 静态Static获得 <br /># 启动系统激活设备. <br /># 网卡eth0设置为Static类型. <br />auto eth0 <br />iface eth0 inet static <br /># 指定IP地址.子网掩码.广播.网关. <br />address 192.168.0.1 <br />netmask 255.255.255.0 <br />network 192.168.0.0 <br />broadcast 192.168.0.255 <br />gateway 192.168.0.1 <br /><br /># 指定DNS服务器地址 <br />dns-nameservers 202.103.0.117 <br />dns-search somedomain.org <br /><br />DNS服务器设置: /etc/resolv.conf <br />// 必须设置.否则无法访问任何URL <br />nameserver 202.103.0.117 <br />nameserver 211.95.193.97 <br /><br /><br />Apt-get 命令: <br />apt-setup 设置Apt源.可选择列表或者手工导入 <br />apt-get update 系统软件包更新 <br />apt-get upgrade 更新所有软件包并且自动升级成最新 <br />apt-get dist-upgrade 更新软件包并解决软件依赖关系 <br />apt-cache search keyword 查找指定软件包信息 <br />apt-cache show package_name 详细显示指定软件包的信息 <br />apt-get install 安装指定软件包 <br />apt-get remove 移除指定软件包 <br /><br />常用命令: <br />base-config 配置基本系统 <br />apt-get install zhcon 安装 Zhcon 中文字符支持包. <br />zhcon 运行 Zhcon UC-DOS 中文系统 <br />apt-get remove netatalk 删除不必要的 Appletalk. <br />apt-get remove exim4 删除MTA.提高启动速度. <br />vi /etc/zhcon.conf 配置 Zhcon 设置 <br />vi /etc/apt/source.list 配置 Apt 源址 <br /><br /><br />base-config #进入基本系统配置设置. <br /><br />apt-setup #重新设置APT源文件. <br /><br />apt-get install zhcon #安装 Zhcon 中日韩文外挂. <br /><br />apt-get install vim #安装VIM编辑器.比VI好用很多. <br /><br />apt-get install rar #安装Rar.推荐安装. <br /><br />apt-get install gcc #安装GCC <br /><br />apt-get install make #安装Make <br /><br />apt-get install x-window-system-core #安装X-Window核心 <br /><br />&gt;&gt; 你可以选择安装全部 apt-get install x-window-system <br /><br />apt-get install xdebconfigurator #安装X自动配置工具 <br /><br />&gt;&gt; xdebconfigurator #自动检测硬件 <br /><br />&gt;&gt; dexconf #配置 /etc/X11/XF86Config-4 <br /><br />dpkg-reconfigure xserver-xfree86 # 重新配置X参数.重要. <br /><br />apt-get install gnome-core #安装Gnome核心.你也可以选择全部安装. <br /><br /><br />apt-get install modconf # 安装硬件管理模块工具. <br />apt-get install rcconf # 安装启动管理模块工具. <br />apt-get install deborphan # 显示未关联和使用的软件包. <br /><br />tasksel # 基础的软件包管理工具 <br /><br />apt-get remove packages-name # 删除一个软件包. <br />dpkg -P packages-name # 彻底删除一个软件包以及配置文件. <br /><br />tzconfig # 修改系统默认时区 <br />debconf # Deb配置命令 (具体不详) <br /><br />fc-cache -f -v # 运行于字体目录中.更新字体信息缓存 <br />fc-cache -v # 运行于字体目录中.更新字体信息缓存 <br /><br />mkfontscale # 生成 font.scale 文件.与字体在同一目录下运行. <br />cp fonts.scale fonts.dir #将生成的 fonts.scale 复制为系统需要的 fonts.dir 配置文件. <br /><br />apt-get install locales # 安装最新版的 locales 软件包 <br /><br />&gt;&gt; 安装以后将会在 /usr/lib/locale/ 自动生成所需要的 locale <br />&gt;&gt; 执行 locale 查看现有的配置内容 <br />&gt;&gt; 路径为 /etc/locale.gen <br />&gt;&gt; 可用命令 locale-gen <br /><br />dpkg-reconfigure locales # 重新配置 locale 设置 <br /><br />apt-get install fvwm # 安装fvwm <br /><br />1. 设置你的系统启动方式是命令行启动模式. <br />在 /etc/inittab 文件中.设置以命令行的方式来启动: <br />id:3:initdefault <br /><br />2. 将 etc/X11/xinit/xinitrc 这个文件备份.比如 xinitrc.old <br />cp xinitrc xinitrc.old <br />然后在 /root/ 或者是 /home/usrname/ 下面建立一个 .xinitrc 文件. <br />在里面写入: exec fvwm 并保存. <br />最后执行: startx 进入 fvwm <br /><br /><br />1. 安装Debian的时候.选择中文简体. <br /><br />2. 设置时区的时候选择: "Asia" 以及 "Shanghai" <br /><br />3. 设置Apt源地址包含: DebianSecurity CN99 GeekBone Nctu.edu.tw 地址. <br /><br />4. 运行 apt-get update 命令更新系统软件包. <br /><br />5. 运行 apt-get upgrade 命令安装更新软件包. <br /><br />6. 运行 apt-get install zhcon 命令安装 zhcon 中文控制台. <br /><br />7. 运行 apt-get install vim 为了方便可安装 VIM 编辑器. <br /><br />8. 修改配置文件 /etc/profile 增加如下内容: <br /><br />export LANG=zh_CN.GB2312 <br />export LC_ALL=zh_CN.GB2312 <br /><br />10. 重新登陆 Debian. 进入 zhcon. <br /><br />11. 执行 apt-get install locales 安装或者更新最新版本. <br /><br />12. 安装 locales 后会自动进入设置 locale 对话框. <br />语言设置选中: "en_US ISO-8859-1" 和 "zh_CN" <br />如果你需要支持更多的也可以选择 "BIG" 和 "UIF-8" 等等. <br />最后记得将 "zh_CN" 设置为 locale 的默认编码. <br /><br />13. 退出zhcon环境(Ctrl+D). 退出Debian控制台(Exit) <br />重新登陆 Debian. 进入 zhcon. 运行 locale 查看是否设置生效. <br /><br />14. 运行 apt-get install libpango1.0-common 安装 defoma. <br />安装完以后.会提示你将其设置为字体管理工具.选择 Yes. <br /><br />15. 因为我们已经有了defoma.所以只需要安装新的中文环境和字体. <br />设置字体和配置字体文件等复杂工作我们都不需要做了. <br /><br />运行 apt-get install xfonts-intl-chinese 安装简体中文的环境字体. (重要) <br />运行 apt-get install xfonts-intl-chinese-big 安装支持繁体中文环境字体. (可选) <br /><br />(你可以参考: <a href="http://www.debian.org/intl/zh/software" target="_blank">http://www.debian.org/intl/zh/software</a> 支持中文的所有软件.) <br /><br />16. 安装两个官方推荐的简体中文的字体: <br /><br />apt-get install ttf-arphic-gbsn00lp <br />apt-get install ttf-arphic-gkai00mp <br /><br />17. 安装中文输入法.如小企鹅或者XCIN. <br />apt-get install xcin <br /><br />18. 设置 /etc/X11/xinit/xinitrc 中自动运行中文输入法.增加如下内容: <br /><br />export XMODIFIERS="@im=xcin" <br />xcin &amp; <br /><br />19. 到这里建议重新启动一下Debian.然后开始安装 GNOME 或者 FVWM. <br />我建议还是安装 FVWM 这个比较稳定和专业一点. <br />apt-get install fvwm <br />想漂亮继续装个fvwm的主题 <br />apt-get install fvwm-themes <br /><br />20. OK.现在我们可以直接输入 startx 进入 fvwm. <br />如果没有问题的话.应该可以看到是中文环境了. <br /><br /><br /># 安装软件包并且自动检测并安装相关软件. <br />aptitude -R -G install Package <br /><br /># 检测软件包的相关资料. <br /># 这里将检测 Package 软件包的信息. <br />aptitude show Package <br /><br /># 安装指定软件并且指定安装该软件的版本. <br /># 这里将安装 Packge 软件.版本是2.2.5. <br />aptitude install Package=2.2.5 <br /><br /># 删除指定软件.但是不会删除配置文件. <br />aptitude remove <br /><br /># 删除软件包以及所有配置文件. [完全删除] <br /># 推荐使用.这个命令会自动检测依赖关系. <br />aptitude purge <br /><br /><br />Debian Linux Install VMware and Xfce <br /><br /><a href="http://www.debian.org/" target="_blank">www.Debian.org</a> 下载最新的 Debian 3.1 r01 ISO镜像. <br />Download: <a href="http://debian.cn99.com/debian-cd/debian-31r0a-i386-netinst.iso" target="_blank">http://debian.cn99.com/debian-cd/debian-31r0a-i386-netinst.iso</a><br /><br />提示: 请确保下载的是 Stable 的版本.否则.如果你使用 Testing 的版本将无法使用 GCC 3.3.5 <br /><br />下载完以后开始安装.可以选择安装英文版的或者是简体中文版的. <br /><br />安装完以后.我们首先安装 GCC 3.3.5 和 Make.因为VMware将会依赖这两个软件包. <br /><br />aptitude install gcc make <br /><br />提示: 执行命令后请注意确认一下 GCC 的版本号.正确的应该是 GCC 3.3.5. <br />如果是 GCC 4.0 的那就说明 Debian 是 Testing 的.需要更换正确的版本重新安装. <br /><br />安装完以后推荐安装VIM来代替VI.如果需要的话安装FTP Client. <br /><br />aptitude install vim <br />aptitude install ftp <br /><br />下面进入关键的一步.我们需要安装 Debian 的 kernel-headers 文件. <br />因为 Debian 下的 VMware 需要该内核头部文件.并且版本要与你现在的内核一致. <br /><br />查看当前系统的内核信息: (我的是:2.4.27-2) <br /><br />ls /boot <br /><br />安装与自己匹配的 kernel-headers. <br /><br />aptitude install kernel-headers-2.4.27-2 kernel-headers-2.4.27-2-386 <br /><br />因为该文件太长了.我每次都是用通配符匹配的.先查到自己的内核版.比如: <br /><br />aptitude install kernel-headers-2.4.27-2* <br /><br />注意红色的部分为自己的内核版本然后加通配符. <br />aptitdue 会自动寻找匹配的文件.一般找到的全部安装也没问题. <br /><br />到这里为止就完成了系统的基本配置.接下来开始安装X和XFCE. <br /><br />aptitude install x-window-system-core <br />aptitude install xfce4 <br /><br />安装完毕以后登陆XFCE.通过X的Terminal进行VMare的安装就可以了.<img src ="http://www.blogjava.net/aspirin/aggbug/37914.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2006-03-28 22:40 <a href="http://www.blogjava.net/aspirin/archive/2006/03/28/37914.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>AdBlock正则表达式实践心得[by kmc]（转）</title><link>http://www.blogjava.net/aspirin/archive/2006/03/28/37913.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Tue, 28 Mar 2006 14:39:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2006/03/28/37913.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/37913.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2006/03/28/37913.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/37913.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/37913.html</trackback:ping><description><![CDATA[
		<span class="postbody">
				<span style="font-weight: bold;">首先，我尚且不懂javascript，以下心得，完全是通过学习正则表达式的文档和实践得出，
<br />
写该文的目的之一也是试图消除大家对正则表达式的畏惧心理，从简单之处先入门。
<br /><span style="color: red;">而这其中必定有贻笑大方之处，恳请高手们斧正！</span><br /><br /><span style="color: rgb(255, 0, 200);"><br />
在看本文之前，我在附件中附上了带我进入正则表达式之门的一个基础教程，
<br />
和一个“正则表达式的练习器”，建议大家先读此文并粗略的实践一下，因为
<br />
下面的文字都站在这篇文章的基础上。</span><br />
---------------------------------------------------------------------------------------------</span>
				<br />
				<br />
				<br />
通过对正则表达式的文档的研究，以及对本人Maxthon积累下来的广告过滤条目对应的url的分析，
<br />
我有以下几点心得：
<br />
1.正则表达式的优势，在于高整合度和高精确度，记做到了代码的简洁，又疏而不漏，唯一的缺点，不过是
<br />
可读性略差了一点。
<br />
2.理论上说，所有的过滤条目都可以用|符号整合到一条正则表达式过滤器里面去，可是这样既雪上加霜地降低了
<br />
可读性，还不可避免地失去了正则表达式高整合度的优势。所以，为了能写出好的正则表达式，分析需要匹配的
<br />
文本（在这里就是url了）是必不可少的。
<br /><br />
*************************************************************************************
<br />
我们常见的url无非是：aaa.bbb.ccc/123456789/........htm,gif等等
<br />
需要过滤的地址，由抽象到具体来说，往往有以下特点：
<br /><br /><span style="color: red;">I.全部过滤一个不漏，只要出现就喀嚓，往往是令人深恶痛绝的url。</span><br />
例（例子中都是用原始的带通配符的表达式）：*.ad.*;  */ad/*;  *.3721.*/*或者*3721*
<br /><span style="color: red;">II.过滤网址主体，也就是第一个/号之前的所有。</span><br />
例：www.1000downloads.com/*;    <a href="http://www.w163.com/" target="_blank">www.w163.com/</a>*
<br /><span style="color: red;">III.过滤具体到网页子目录，进入若干个/号内</span><br />
例：http://imguv.21cn.com/images/*;    <a href="http://union.homeway.com.cn/images/" target="_blank">http://union.homeway.com.cn/images/</a>*
<br />
之所以能这样，一般是因为一眼看过去就知道这样的目录下没有好东西，或者看到很多条过滤器中
<br />
都出现如下的结构（也表明了网页作者的风格类似），如这里的images
<br /><span style="color: red;">IV.过滤具体到文件，一般就是*.gif,*.swf,*.js类的文件了</span><br />
例：http://images.chinabyte.com/*.swf; <a href="http://www.5ud.com/images/" target="_blank">http://www.5ud.com/images/</a>*.gif
<br /><br /><span style="color: blue;">综上，只要把问题分开考虑即可：</span><br /><br />
**************************************************************************************
<br /><span style="color: green;">1.一段体</span><br />
创建一个如下的表达式（注：本文的正则表达式如果不带前后的两个/号，加入adblock时需加上）
<br /><span style="font-weight: bold;">(\.|\/)(您的输入)(\.|\/|_) </span>    （感谢zlowly给出这个filter模型）
<br />
前后两个括号中表示的是在你的字段前出现"."或"/"，字段后出现"."，"/"或"_"时候考虑你的字段，
<br />
没有这两个限制的话过滤范围就过宽了，例：只写(ad)的话，任何带有ad二字的url均会被过滤。
<br />
例：
<br /><span style="font-weight: bold;">/(\.|\/)(tomnews|dns99|ad|banner|3721|taobao|unionsky)(s)?(\d)*(\.|\/|_)/</span><br />
--其中的(s)?是表示s出现0次或1次，则该filter通配ad或者ads,banner或banners，但由于
<br />
可以出现0次，所以其他成分仍然可以往中间的括号里加入，即便没有unionskys,taobaos。
<br />
--后面的(\d)*表示0-9之间的数字，*号表示0次或多次。
<br />
正如zlowly所说，为的是对抗网站根据日期显示不同广告，例如
<br />
.../ad20041020/...
<br />
然后无非是在中间那个括号中，用|号分开你所有想要匹配的字段了。
<br />
知道了这一点，后面的情况就势如破竹了。
<br /><br /><span style="color: green;">2.二段体</span><br />
创建一个这样的表达式雏形：
<br /><span style="font-weight: bold;">\.()\.()</span><br />
由于已经具体到网址的主体部分，所以前后的/或者.也就不需再出现了
<br />
例：
<br /><span style="font-weight: bold;">\.(boyis|***|cjt1|w163|ppzxw|1000downloads)\.(net|com)</span><br />
它等价于
<br /><a href="http:///" target="_blank">http://</a>*.***.com/*
<br />
*.boyis.com*
<br />
*.cjt1.net*
<br />
*.w163.com*
<br />
*.ppzxw.com*
<br />
*.1000downloads.com*
<br />
这样看来，应该比较清晰了吧？
<br /><br /><span style="color: green;">3.三段体</span><br />
例：
<br /><span style="font-weight: bold;">(union|adimg|unstat|ulinkjs)\.(baidu|tom|163|sogou)\.(com)</span><br />
等价于
<br />
*adimg.163.com*
<br />
*unstat.baidu.com*
<br />
*ulinkjs.tom.com*
<br />
*union.sogou.com*
<br /><br /><br />
    或许有朋友问，为什么分开三种情况呢？整合到一起去有没有可能？
<br />
一个很自然的想法是用一个"?"号来表示三段体中的第一段或者出现，或者不出现，
<br />
例如想要整合admig.163.com和*.boyis.com，这样写的话：
<br />
(adimg)?\.(163|boyis)\.(com)
<br />
因为adimg这个字段可出现也可不出现，所以实际上www.163.com这样的地址自然也会被匹配上了，这可不是我们的初衷，
<br />
这也就是为什么我觉得应该把各种情况分开考虑，当然更期待高手能解决这个
<br />
问题。
<br />
    其次，鉴于"|"符号会导致自由组合，整合度不应太高。三段体例子中，第一个括号中最好不要放进通用性太强的字段，
<br />
如www，否则"|"符号产生自由组合，若要过滤www.ads8.com和adimage.163.com，自由组合的结果当然www.163.com也被过滤了……
<br />
有鉴于此，锁定某一段应该是一个不错的选择，我看第三段应该锁定，也就是说里面没有“或”符号
<br />
例如：结尾为com的全部单独写一条,而不要结尾(com|net|org|biz|gov)全加上，
<br />
或许会有意想不到的组合的（大家看看whitehouse.com/net/gov就知道了<img src="http://www.firefox.net.cn/newforum/images/smiles/icon_biggrin.gif" alt="Smile" onclick="javascript:window.open(this.src);" style="cursor: pointer;" onload="javascript:if(this.width&gt;1000)this.style.width=1000;" border="0" />）
<br /><br /><span style="color: green;">4.具体到文件的，swf/gif类（如有FlashBlock这个扩展的，可以不需要重复过滤swf）</span><br />
下面是一条很个人的filter，原则也就是在()\.()\.()\/的基本型后面加上了一个.*\.(gif|swf)的文件类型判断，
<br />
鉴于这个时候网站网址变化很大，这个filter的整合度就不高了，很多都是直接贴进去然后用"|"符号分开而已。
<br /><span style="font-style: italic;">(www\.(mydrivers|btbbt|shd|5ud)\.com(\.cn)?|search(\d)?\.btchina\.net|image\.cgame\.cn|
<br />
onlinedown\.net|218\.106\.83\.10|down\.20cl\.com)\/(image(s)?|photo)?\/.*\.(gif|swf)</span><br />
等价于：
<br /><a href="http:///" target="_blank">http://</a>*.onlinedown.net/*.swf
<br /><a href="http:///" target="_blank">http://</a>*.onlinedown.net/images/*.gif
<br /><a href="http://down.20cl.com/" target="_blank">http://down.20cl.com/</a>*.gif
<br /><a href="http://image.cgame.cn/photo/" target="_blank">http://image.cgame.cn/photo/</a>*.gif
<br /><a href="http://search3.btchina.net/images/" target="_blank">http://search3.btchina.net/images/</a>*.gif
<br /><a href="http://www.btbbt.com/" target="_blank">http://www.btbbt.com/</a>*.gif
<br /><a href="http://www.shd.com.cn/" target="_blank">http://www.shd.com.cn/</a>*.gif
<br /><a href="http://www.mydrivers.com/images/" target="_blank">http://www.mydrivers.com/images/</a>*.gif
<br /><a href="http://www.mydrivers.com/images/" target="_blank">http://www.mydrivers.com/images/</a>*.swf
<br /><a href="http://218.106.83.10/images/" target="_blank">http://218.106.83.10/images/</a>*.gif
<br />
*****************************************************************************************************************
<br /><br />
希望拙作能给大家体会正则表达式的强大、学习使用正则表达式带来帮助。
<br /><span style="color: blue;">在此最有必要感谢的是AdBlock的<span style="font-weight: bold;">(作者(们)?)</span>（0次或1次……呵呵）</span>，我在AdBlock的设置中也没找到他(们)?的名字，
<br />
网站上也没找到，对这样默默无闻的人表示敬佩。
<br />
顺带谢谢提供广告帮助测试AdBlock的所有广告提供商……</span>
<img src ="http://www.blogjava.net/aspirin/aggbug/37913.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2006-03-28 22:39 <a href="http://www.blogjava.net/aspirin/archive/2006/03/28/37913.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>mysql数据库优化(转)</title><link>http://www.blogjava.net/aspirin/archive/2006/03/28/37912.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Tue, 28 Mar 2006 14:37:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2006/03/28/37912.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/37912.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2006/03/28/37912.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/37912.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/37912.html</trackback:ping><description><![CDATA[
下决心开始学oracle了,用mysql已经有不短的时间了,今天写下这些算是对自己的一个mysql之旅的一个交代吧.以下仅仅是本人在使用mysql过程中的一点个人的体会,也许存在许多纰漏和错误,还请指正!! <br /><br /><br /><br />
首先,为了使一个系统更快,最重要的部分就是基础设计,不过有些东西是现有情况下无法逾越的,比如说系统常见的瓶颈. <br /><br />
我所能想到的: <br /><br />
1:磁盘寻道能力,以高速硬盘(7200转/秒),理论上每秒寻道7200次.这是没有办法改变的,优化的方法是----用多个硬盘,或者把数据分散存储. <br /><br />
2:硬盘的读写速度,这个速度非常的快(限于本人的知识所限,只知道在每秒几十甚至上百MB).这个更容易解决--可以从多个硬盘上并行读写. <br /><br />
3:cpu.cpu处理内存中的数据,当有相对内存较小的表时,这是最常见的限制因素. <br /><br />
4:内存的限制.当cpu需要超出适合cpu缓存的数据时,缓存的带宽就成了内存的一个瓶颈---不过现在内存大的惊人,一般不会出现这个问题. <br /><br />
第二步: <br /><br />
(本人使用的是学校网站的linux平台(Linux ADVX.Mandrakesoft.com 2.4.3-19mdk )) <br /><br />
1:调节服务器参数 <br /><br />
用shell&gt;mysqld-help这个命令声厂一张所有mysql选项和可配置变量的表.输出以下信息: <br /><br />
possible variables for option--set-variable(-o) are: <br /><br />
back_log current value:5 //要求mysql能有的连接数量.back_log指出在mysql暂停接受连接的时间内有多少个连接请求可以被存在堆栈中 <br /><br />
connect_timeout current value:5 //mysql服务器在用bad handshake(不好翻译)应答前等待一个连接的时间 <br /><br />
delayed_insert_timeout current value:200 //一个insert delayed在终止前等待insert的时间 <br /><br />
delayed_insert_limit current value:50 //insert delayed处理器将检查是否有任何select语句未执行,如果有,继续前执行这些语句 <br /><br />
delayed_queue_size current value:1000 //为insert delayed分配多大的队 <br /><br />
flush_time current value:0 //如果被设置为非0,那么每个flush_time 时间,所有表都被关闭 <br /><br />
interactive_timeout current value:28800 //服务器在关上它之前在洋交互连接上等待的时间 <br /><br />
join_buffer_size current value:131072 //用与全部连接的缓冲区大小 <br /><br />
key_buffer_size current value:1048540 //用语索引块的缓冲区的大小,增加它可以更好的处理索引 <br /><br />
lower_case_table_names current value:0 // <br /><br />
long_query_time current value:10 //如果一个查询所用时间大于此时间,slow_queried计数将增加 <br /><br />
max_allowed_packet current value:1048576 //一个包的大小 <br /><br />
max_connections current value:300 //允许同时连接的数量 <br /><br />
max_connect_errors current value:10 //如果有多于该数量的中断连接,将阻止进一步的连接,可以用flush hosts来解决 <br /><br />
max_delayed_threads current value:15 //可以启动的处理insert delayed的数量 <br /><br />
max_heap_table_size current value:16777216 // <br /><br />
max_join_size current value:4294967295 //允许读取的连接的数量 <br /><br />
max_sort_length current value:1024 //在排序blob或者text时使用的字节数量 <br /><br />
max_tmp_tables current value:32 //一个连接同时打开的临时表的数量 <br /><br />
max_write_lock_count current value:4294967295 //指定一个值(通常很小)来启动mysqld,使得在一定数量的write锁定之后出现read锁定 <br /><br />
net_buffer_length current value:16384 //通信缓冲区的大小--在查询时被重置为该大小 <br /><br />
query_buffer_size current value:0 //查询时缓冲区大小 <br /><br />
record_buffer current value:131072 //每个顺序扫描的连接为其扫描的每张表分配的缓冲区的大小 <br /><br />
sort_buffer current value:2097116 //每个进行排序的连接分配的缓冲区的大小 <br /><br />
table_cache current value:64 //为所有连接打开的表的数量 <br /><br />
thread_concurrency current value:10 // <br /><br />
tmp_table_size current value:1048576 //临时表的大小 <br /><br />
thread_stack current value:131072 //每个线程的大小 <br /><br />
wait_timeout current value:28800 //服务器在关闭它3之前的一个连接上等待的时间 <br /><br /><br /><br />
根据自己的需要配置以上信息会对你帮助. <br /><br /><br /><br />
第三: <br /><br />
1:如果你在一个数据库中创建大量的表,那么执行打开,关闭，创建(表)的操作就会很慢. <br /><br />
2:mysql使用内存 <br /><br />
a: 关键字缓存区(key_buffer_size)由所有线程共享 <br /><br />
b:
每个连接使用一些特定的线程空间.一个栈(默认为64k,变量thread_stack),一个连接缓冲区(变量net_buffer_length)和
一个结果缓冲区(net_buffer_length).特定情况下,连接缓冲区和结果缓冲区被动态扩大到max_allowed_packet. <br /><br />
c:所有线程共享一个基存储器 <br /><br />
d:没有内存影射 <br /><br />
e:每个做顺序扫描的请求分配一个读缓冲区(record_buffer) <br /><br />
f:所有联结均有一遍完成并且大多数联结甚至可以不用一个临时表完成.最临时的表是基于内存的(heap)表 <br /><br />
g:排序请求分配一个排序缓冲区和2个临时表 <br /><br />
h:所有语法分析和计算都在一个本地存储器完成 <br /><br />
i:每个索引文件只被打开一次,并且数据文件为每个并发运行的线程打开一次 <br /><br />
j:对每个blob列的表，一个缓冲区动态的被扩大以便读入blob值 <br /><br />
k:所有正在使用的表的表处理器被保存在一个缓冲器中并且作为一个fifo管理. <br /><br />
l:一个mysqladmin flush-tables命令关闭所有不在使用的表并且在当前执行的线程结束时标记所有在使用的表准备关闭 <br /><br />
3:mysql锁定表 <br /><br />
mysql中所有锁定不会成为死锁. <br /><br />
wirte锁定: <br /><br />
mysql的锁定原理:a:如果表没有锁定,那么锁定;b否则,把锁定请求放入写锁定队列中 <br /><br />
read锁定: <br /><br />
mysql的锁定原理:a:如果表没有锁定,那么锁定;b否则,把锁定请求放入读锁定队列中 <br /><br /><br /><br />
有时候会在一个表中进行很多的select,insert操作,可以在一个临时表中插入行并且偶尔用临时表的记录更新真正的表 <br /><br />
a:用low_priority属性给一个特定的insert,update或者delete较低的优先级 <br /><br />
b:max_write_lock_count指定一个值(通常很小)来启动mysqld,使得在一定数量的write锁定之后出现read锁定 <br /><br />
c:通过使用set sql_low_priority_updates=1可以从一个特定的线程指定所有的更改应该由较低的优先级完成 <br /><br />
d:用high_priority指定一个select <br /><br />
e:如果使用insert....select....出现问题,使用myisam表------因为它支持因为它支持并发的select和insert <br /><br />
4:最基本的优化是使数据在硬盘上占据的空间最小.如果索引做在最小的列上,那么索引也最小.实现方法: <br /><br />
a:使用尽可能小的数据类型 <br /><br />
b:如果可能，声明表列为NOT NULL. <br /><br />
c:如果有可能使用变成的数据类型,如varchar(但是速度会受一定的影响) <br /><br />
d:每个表应该有尽可能短的主索引 <br /><br />
e:创建确实需要的索引 <br /><br />
f:如果一个索引在头几个字符上有唯一的前缀,那么仅仅索引这个前缀----mysql支持在一个字符列的一部分上的索引 <br /><br />
g:如果一个表经常被扫描,那么试图拆分它为更多的表 <br /><br /><br /><br /><br /><br />
第四步 <br /><br />
1:索引的使用,索引的重要性就不说了,功能也不说了,只说怎么做. <br /><br />
首先要明确所有的mysql索引(primary,unique,index)在b树中有存储.索引主要用语: <br /><br />
a:快速找到where指定条件的记录 <br /><br />
b:执行联结时,从其他表检索行 <br /><br />
c:对特定的索引列找出max()和min()值 <br /><br />
d：如果排序或者分组在一个可用键的最前面加前缀，排序或分组一个表 <br /><br />
e：一个查询可能被用来优化检索值，而不用访问数据文件．如果某些表的列是数字型并且正好是某个列的前缀，为了更快，值可以从索引树中取出 <br /><br />
２：存储或者更新数据的查询速度 <br /><br />
　grant的执行会稍稍的减低效率． <br /><br />
　mysql的函数应该被高度的优化．可以用benchmark（loop_count,expression)来找出是否查询有问题 <br /><br />
　select
的查询速度：如果想要让一个select．．．where．．．更快，我能想到的只有建立索引．可以在一个表上运行myisamchk－－analyze
来更好的优化查询．可以用myisamchk－－sort－index－－sort－records＝１来设置用一个索引排序一个索引和数据． <br /><br />
３：mysql优化where子句 <br /><br />
3.１：删除不必要的括号： <br /><br />
　（（a AND b) AND c OR (((a AND b) AND (a AND d))))&gt;(a AND b AND c) OR (a AND b AND c AND d) <br /><br />
3.2:使用常数 <br /><br />
　（a&lt;b AND b=c) AND a=100 &gt; b&gt;5 AND b=c AND a=5 <br /><br />
3.3:删除常数条件 <br /><br />
（b&gt;=5 AND b=5) OR (b=6 AND 5=5) OR (b=100 AND 2=3) &gt; b=5 OR b=6 <br /><br />
3.4:索引使用的常数表达式仅计算一次 <br /><br />
3.5：在一个表中，没有一个where的count(*)直接从表中检索信息 <br /><br />
3.6:所有常数的表在查询中在任何其他表之前读出 <br /><br />
3.7:对外联结表最好联结组合是尝试了所有可能性找到的 <br /><br />
3.8：如果有一个order　by字句和一个不同的group　by子句或者order　by或者group　by包含不是来自联结的第一个表的列，那么创建一个临时表 <br /><br />
3.9:如果使用了sql_small_result，那么msyql使用在内存中的一个表 <br /><br />
3.10:每个表的索引给查询并且使用跨越少于３０％的行的索引． <br /><br />
3.11在每个记录输出前，跳过不匹配having子句的行 <br /><br /><br /><br />
４：优化left　join <br /><br />
在mysql中　a left join b按以下方式实现 <br /><br />
a：表b依赖于表a　 <br /><br />
b：表a依赖于所有用在left　join条件的表（除了b） <br /><br />
c：所有left　join条件被移到where子句中 <br /><br />
d：进行所有的联结优化，除了一个表总是在所有他依赖的表后读取．如果有一个循环依赖，那么将发生错误 <br /><br />
e：进行所有的标准的where优化 <br /><br />
f：如果在a中有一行匹配where子句，但是在b中没有任何匹配left　join条件，那么，在b中生成的所有设置为ＮＵＬＬ的一行 <br /><br />
g：如果使用left　join来找出某些表中不存在的行并且在where部分有column_name IS NULL测试(column_name为NOT NULL列)．那么，mysql在它已经找到了匹配left　join条件的一行后，将停止在更多的行后寻找 <br /><br />
５：优化limit <br /><br />
a：如果用limit只选择一行，当mysql需要扫描整个表时，它的作用相当于索引 <br /><br />
b：如果使用limit＃与order　by，mysql如果找到了第＃行，将结束排序，而不会排序正个表 <br /><br />
c：当结合limit＃和distinct时，mysql如果找到了第＃行，将停止 <br /><br />
d：只要mysql已经发送了第一个＃行到客户，mysql将放弃查询 <br /><br />
e：limit 0一直会很快的返回一个空集合． <br /><br />
f：临时表的大小使用limit＃计算需要多少空间来解决查询 <br /><br />
６：优化insert <br /><br />
插入一条记录的是由以下构成： <br /><br />
a:连接（３） <br /><br />
b:发送查询给服务器（２） <br /><br />
c:分析查询（２） <br /><br />
d:插入记录（１*记录大小） <br /><br />
e：插入索引（１*索引） <br /><br />
f：关闭（１） <br /><br />
以上数字可以看成和总时间成比例 <br /><br />
改善插入速度的一些方法： <br /><br />
6.1：如果同时从一个连接插入许多行，使用多个值的insert，这比用多个语句要快 <br /><br />
6.2：如果从不同连接插入很多行，使用insert　delayed语句速度更快 <br /><br />
6.3: 用myisam，如果在表中没有删除的行，能在select：s正在运行的同时插入行 <br /><br />
6.4: 当从一个文本文件装载一个表时，用load　data　infile．这个通常比insert快20 <br /><br />
倍 <br /><br />
6.5:
可以锁定表然后插入－－主要的速度差别是在所有insert语句完成后，索引缓冲区仅被存入到硬盘一次．一般与有不同的insert语句那样多次存入要
快．如果能用一个单个语句插入所有的行，锁定就不需要．锁定也降低连接的整体时间．但是对某些线程最大等待时间将上升．例如： <br /><br />
thread 1 does 1000 inserts <br /><br />
thread 2,3 and 4 does 1 insert <br /><br />
thread 5 does 1000 inserts <br /><br />
如
果不使用锁定，２，３，４将在１和５之前完成．如果使用锁定，２，３，４，将可能在１和５之后完成．但是整体时间应该快４０％．因为insert，
update，delete操作在mysql中是很快的，通过为多于大约５次连续不断的插入或更新一行的东西加锁，将获得更好的整体性能．如果做很多一行
的插入，可以做一个lock　tables，偶尔随后做一个unlock　tables（大约每１０００行）以允许另外的线程存取表．这仍然将导致获得好
的性能．load　data　infile对装载数据仍然是很快的． <br /><br />
为了对load　data　infile和insert得到一些更快的速度，扩大关键字缓冲区． <br /><br />
７优化update的速度 <br /><br />
它的速度依赖于被更新数据的大小和被更新索引的数量 <br /><br />
使update更快的另一个方法是推迟修改，然后一行一行的做很多修改．如果锁定表，做一行一行的很多修改比一次做一个快 <br /><br />
８优化delete速度 <br /><br />
删除一个记录的时间与索引数量成正比．为了更快的删除记录，可以增加索引缓存的大小 <br /><br />
从一个表删除所有行比删除这个表的大部分要快的多 <br /><br /><br /><br />
第五步 <br /><br />
１：选择一种表类型 <br /><br />
1.1静态myisam <br /><br />
这
种格式是最简单且最安全的格式，它是磁盘格式中最快的．速度来自于数据能在磁盘上被找到的难易程度．当锁定有一个索引和静态格式的东西是，它很简单，只是
行长度乘以数量．而且在扫描一张表时，每次用磁盘读取来读入常数个记录是很容易的．安全性来源于如果当写入一个静态myisam文件时导致计算机down
掉，myisamchk很容易指出每行在哪里开始和结束，因此，它通常能收回所有记录，除了部分被写入的记录．在mysql中所有索引总能被重建 <br /><br />
1.2动态myisam <br /><br />
这
种格式每一行必须有一个头说明它有多长．当一个记录在更改期间变长时，它可以在多于一个位置上结束．能使用optimize　tablename或
myisamchk整理一张表．如果在同一个表中有像某些varchar或者blob列那样存取／改变的静态数据，将动态列移入另外一个表以避免碎片．
<br /><br />
1.2.1压缩myisam，用可选的myisampack工具生成 <br /><br />
1.2.2内存 <br /><br />
这种格式对小型／中型表很有用．对拷贝／创建一个常用的查找表到洋heap表有可能加快多个表联结，用同样数据可能要快好几倍时间． <br /><br />
select tablename.a,tablename2.a from tablename,tablanem2,tablename3 where <br /><br />
tablaneme.a=tablename2.a and tablename2.a=tablename3.a and tablename2.c!=0; <br /><br /><br /><br />
为了加速它，可以用tablename2和tablename3的联结创建一个临时表，因为用相同列（tablename1.a）查找． <br /><br />
ＣＲＥＡＴＥ　ＴＥＭＰＯＲＡＲＹ　ＴＡＢＬＥ　test TYPE=HEAP <br /><br />
SELECT <br /><br />
tablename2.a as a2,tablename3.a as a3 <br /><br />
FROM <br /><br />
tablenam2,tablename3 <br /><br />
WHERE <br /><br />
tablename2.a=tablename3.a and c=0; <br /><br />
SELECT tablename.a,test.a3 from tablename,test where tablename.a=test.a1; <br /><br />
SELECT tablename.a,test,a3,from tablename,test where tablename.a=test.a1 and ....; <br /><br /><br /><br />
1.3静态表的特点 <br /><br />
1.3.1默认格式．用在表不包含varchar，blob，text列的时候 <br /><br />
1.3.2所有的char，numeric和decimal列填充到列宽度 <br /><br />
1.3.3非常快 <br /><br />
1.3.4容易缓冲 <br /><br />
1.3.5容易在down后重建，因为记录位于固定的位置 <br /><br />
1.3.6不必被重新组织（用myisamchk），除非是一个巨量的记录被删除并且优化存储大小 <br /><br />
1.3.7通常比动态表需要更多的存储空间 <br /><br /><br /><br />
1.4动态表的特点 <br /><br />
1.4.1如果表包含任何varchar，blob，text列，使用该格式 <br /><br />
1.4.2所有字符串列是动态的 <br /><br />
1.4.3每个记录前置一个位． <br /><br />
1.4.4通常比定长表需要更多的磁盘空间 <br /><br />
1.4.5每个记录仅仅使用所需要的空间，如果一个记录变的很大，它按需要被分成很多段，这导致了记录碎片 <br /><br />
1.4.6如果用超过行长度的信息更新行，行被分段． <br /><br />
1.4.7在系统down掉以后不好重建表，因为一个记录可以是多段 <br /><br />
1.4.8对动态尺寸记录的期望行长度是３＋（number　of　columns＋７）／８＋(number <br /><br />
of char columns)+packed size of numeric columns+length of strings +(number of <br /><br />
NULL columns+7)/8 <br /><br />
对
每个连接有６个字节的惩罚．无论何时更改引起记录的变大，都有一个动态记录被连接．每个新连接至少有２０个字节，因此下一个变大将可能在同一个连接中．如
果不是，将有另外一个连接．可以用myisamchk　－恶毒检查有多少连接．所有连接可以用myisamchk -r删除． <br /><br /><br /><br />
1.5压缩表的特点 <br /><br />
1.5.1一张用myisampack实用程序制作的只读表． <br /><br />
1.5.2解压缩代码存在于所有mysql分发中，以便使没有myisampack的连接也能读取用myisampack压缩的表 <br /><br />
1.5.3占据很小的磁盘空间 <br /><br />
1.5.4每个记录被单独压缩．一个记录的头是一个定长的（１～～３个字节）这取决于表的最大记录．每列以不同的方式被压缩．一些常用的压缩类型是： <br /><br />
　a:通常对每列有一张不同的哈夫曼表 <br /><br />
　b:后缀空白压缩 <br /><br />
　c:前缀空白压缩 <br /><br />
d:用值０的数字使用１位存储 <br /><br />
e:如果整数列的值有一个小范围，列使用最小的可能类型来存储．例如：如果所有的值在０到２５５之间，一个bigint可以作为一个tinyint存储 <br /><br />
　g:如果列仅有可能值的一个小集合，列类型被转换到enum <br /><br />
　h:列可以使用上面的压缩方法的组合 <br /><br />
1.5.5能处理定长或动态长度的记录，去不能处理blob或者text列 <br /><br />
1.5.6能用myisamchk解压缩 <br /><br />
mysql能支持不同的索引类型，但一般的类型是isam，这是一个Ｂ树索引并且能粗略的为索引文件计算大小为(key_length+4)*0.67，在所有的键上的总和． <br /><br />
字符串索引是空白压缩的。如果第一个索引是一个字符串，它可将压缩前缀如果字符串列有很多尾部空白或是一个总部能甬道全长的varchar列，空白压缩使索引文件更小．如果很多字符串有相同的前缀． <br /><br />
1.6内存表的特点 <br /><br />
mysql内部的heap表使用每偶溢出去的１００％动态哈希并且没有与删除有关的问题．只能通过使用在堆表中的一个索引来用等式存取东西（通常用＇＝＇操作符） <br /><br />
堆表的缺点是： <br /><br />
1.6.1想要同时使用的所有堆表需要足够的额外内存 <br /><br />
1.6.2不能在索引的一个部分搜索 <br /><br />
1.6.3不能按顺序搜索下一个条目（即，使用这个索引做一个order　by） <br /><br />
1.6.4mysql不能算出在２个值之间大概有多少行．这被优化器使用是用来决定使用哪个索引的，但是在另一个方面甚至不需要磁盘寻道<img src ="http://www.blogjava.net/aspirin/aggbug/37912.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2006-03-28 22:37 <a href="http://www.blogjava.net/aspirin/archive/2006/03/28/37912.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Apache学习笔记（转载）</title><link>http://www.blogjava.net/aspirin/archive/2006/03/28/37908.html</link><dc:creator>aspirin</dc:creator><author>aspirin</author><pubDate>Tue, 28 Mar 2006 14:34:00 GMT</pubDate><guid>http://www.blogjava.net/aspirin/archive/2006/03/28/37908.html</guid><wfw:comment>http://www.blogjava.net/aspirin/comments/37908.html</wfw:comment><comments>http://www.blogjava.net/aspirin/archive/2006/03/28/37908.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/aspirin/comments/commentRss/37908.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/aspirin/services/trackbacks/37908.html</trackback:ping><description><![CDATA[
		<p>版权声明：可以任意转载，转载时请务必以超链接形式标明文章原始出处和作者信息及本声明<br /><a href="http://www.chedong.com/tech/apache_install.html">http://www.chedong.com/tech/apache_install.html</a></p>
		<p>关键词： apache install php resin mod_gzip mod_expire webalizer cronolog</p>
		<p>内容摘要：</p>
		<p>Apache是一个历史悠久并且功能十分强大的WEB服务器，但其丰富的功能对于一个新手来说往往不知道从何下手。我个人感觉Apache的设计充
分体现了模块化设计的优势，通过在动态模块加载（DSO）模式下的安装，任何子应用模块都可以通过配置文件的简单修改进行积木式的灵活配置。安装的过程可
以从简单的静态html服务开始，一个模块一个模块的学习使用。从单纯的HTML静态服务(core)，到复杂的动态页面服务(core
+ php, core + resin, core + php + mod_gzip, core + resin + mod_expire)。<br /></p>
		<p>本文主要从简化安装==&gt;性能调优==&gt;维护方便的角度，介绍了WEB服务的规划、HTTPD安装/应用模块配置、升级/维护等过程。
让Apache和PHP，Resin等应用模块的独立升级，完全互不影响。</p>
		<ol>
				<li>
						<a href="http://www.chedong.com/tech/apache_install.html#scale">WEB应用容量规划</a>：根据硬件配置和WEB应用的特点进行WEB服务的规划及一些简单的估算公
式；</li>
				<li>
						<a href="http://www.chedong.com/tech/apache_install.html#install">Apache安装过程</a>：apache的通用的简化安装选项，方便以后的应用的模块化配置；<br />
修改 HARD_SERVER_LIMIT：<br />
vi /path/to/apache_src/src/include/httpd.h<br />
#define HARD_SERVER_LIMIT 2560 &lt;===将原来的 HARD_SERVER_LIMIT 256 后面加个“0”<br />
apache编译：<br />
./configure --prefix=/home/apache --enable-shared=max
--enable-module=most</li>
				<li>
						<a href="http://www.chedong.com/tech/apache_install.html#module">可选应用模块/工具的安装</a>：php resin mod_gzip
mod_expire及各个模块之间的配合；<br />
mod_php安装：./configure --with-apxs=/home/apache/bin/apxs
--enable-track-vars --with-mysql<br />
mod_resin安装：./configure --with-apxs=/home/apache/bin/apxs <br />
mod_gzip安装：修改Makefile中的 apxs路径：然后make make install<br />
工具：日志轮循工具cronolog安装：http://www.cronolog.org</li>
				<li>
						<a href="http://www.chedong.com/tech/apache_install.html#maintain">升级/维护</a>：看看通用和模块化的安装过程如何简化了日常的升级/维护工作；<br />
按照以上的方法：系统管理员和应用管理员的职责可以清楚的分开，互相独立。<br />
系统安装：系统管理员的职责就是安装好一台DSO模式的Apache，然后COLON即可，<br />
应用安装：由应用管理员负责具体应用所需要的模块，比如PHP Resin等，并设置httpd.conf中相关的配置。<br />
系统升级：系统管理员：升级操作系统/升级Apache<br />
应用升级：应用管理员：升级应用模块，PHP Resin等。</li>
		</ol>
		<p>
				<b>
						<a name="scale">WEB应用的容量规划</a>
				</b>
		</p>
		<p>Apache主要是一个内存消耗型的服务应用，我个人总结的经验公式：<br />
apache_max_process_with_good_perfermance &lt; (total_hardware_memory /
apache_memory_per_process ) * 2<br />
apache_max_process = apache_max_process_with_good_perfermance * 1.5</p>
		<p>为什么会有一个apache_max_process_with_good_perfermance和apache_max_process呢？原
因是在低负载下系统可以使用更多的内存用于文件系统的缓存，从而进一步提高单个请求的响应速度。在高负载下，系统的单个请求响应速度会慢不少，而超过
apache_max_process，系统会因为开始使用硬盘做虚拟内存交换空间而导致系统效率急剧下降。此外，同样的服务：2G内存的机器的
apache_max_process一般只设置到1G内存的1.7倍，因为Apache本身会因为进程过多导致性能下降。</p>
		<p>例子1：<br />
一个apache + mod_php的服务器：一个apache进程一般需要4M内存<br />
因此在一个1G内存的机器上：apache_max_process_with_good_perfermance &lt; (1g / 4m) *
2 = 500<br />
apache_max_process ＝ 500 * 1.5 = 750<br />
所以规划你的应用让服务尽量跑在500个进程以下以保持比较高的效率，并设置Apache的软上限在800个。</p>
		<p>例子2：<br />
一个apache + mod_resin的服务器： 一个apache进程一般需要2M内存<br />
在一个2G内存的机器上： <br />
apache_max_process_with_good_perfermance &lt; (2g / 2m ) * 2 = 2000<br />
apache_max_process ＝ 2000 * 1.5 = 3000</p>
		<p>以上估算都是按小文件服务估算的（一个请求一般大小在20k以下）。对于文件下载类型站点，可能还会受其他因素：比如带宽等的影响。</p>
		<p>
				<b>
						<a name="install">Apache安装过程</a>
				</b>
		</p>
		<p>服务器个数的硬上限HARD_SERVER_LIMIT的修改：<br />
在Apache的源代码中缺省的最大进程数是256个，需要修改apache_1.3.xx/src/include/httpd.h<br />
#ifndef HARD_SERVER_LIMIT<br />
#ifdef WIN32<br />
#define HARD_SERVER_LIMIT 1024<br />
#elif defined(NETWARE)<br />
#define HARD_SERVER_LIMIT 2048<br />
#else<br />
#define HARD_SERVER_LIMIT 2560 &lt;===将原来的HARD_SERVER_LIMIT 256 后面加个“0”<br />
#endif<br />
#endif</p>
		<p>解释：<br />
Apache缺省的最大用户数是256个：这个配置对于服务器内存还是256M左右的时代是一个非常好的缺省设置，但随着内存成本的急剧下降，现在大型站
点的服务器内存配置一般比当时要高一个数量级不止。所以256个进程的硬限制对于一台1G内存的机器来说是太浪费了，而且Apache的软上限
max_client是受限于HARD_SERVER_LIMIT的，因此如果WEB服务器内存大于256M，都应该调高Apache的
HARD_SERVER_LIMIT。根据个人的经验：2560已经可以满足大部分小于2G内存的服务器的容量规划了（Apache的软上限的规划请看后
面）。</p>
		<p>Apache的编译：以下通用的编译选项能满足以后任意模块的安装<br />
./configure --prefix=/another_driver/apache/ --enable-shared=max<i></i>
--enable-module=most<br />
比如：<br />
./configure --prefix=/home/apache/ --enable-shared=max<i></i>
--enable-module=most<br /></p>
		<p>解释：<br />
--prefix=/another_driver/apache/：建议将apache服务安装在另外一个驱动设备上的目的在于硬盘往往是一个系统使用
寿命最低的设备，因此：将服务数据和系统完全分开，不仅能提高了数据的访问速度，更重要的，大大方便系统升级，应用备份和恢复过程。</p>
		<p>--shared-module=max：使用动态加载方式<a href="http://httpd.apache.org/docs-2.0/en/dso.html">载入子模块会带来5%的性能下降</a>，
但和带来的配置方便相比更本不算什么：比如模块升级方
便，系统升级风险降低，安装过程标准化等</p>
		<p>--enable-module=most：用most可以将一些不常用的module编译进来，比如后面讲到的mod_expire是就不在
apache的缺省常用模块中</p>
		<p>如果不想build so, 也可以这样:<br />
./configure \<br />
"--with-layout=Apache" \<br />
"--prefix=/path/to/apache" \<br />
"--disable-module=access" \<br />
"--disable-module=actions" \<br />
"--disable-module=autoindex" \<br />
"--disable-module=env" \<br />
"--disable-module=imap" \<br />
"--disable-module=negotiation" \<br />
"--disable-module=setenvif" \<br />
"--disable-module=status" \<br />
"--disable-module=userdir" \<br />
"--disable-module=cgi" \<br />
"--disable-module=include" \<br />
"--disable-module=auth" \<br />
"--disable-module=asis"</p>
		<p>但结果会发现，这样编译对服务性能只能有微小的提高（5%左右），但却失去了以后系统升级和模块升级的灵活性，无论是模块还是Apache本身升级
都必须把Apache和PHP的SOURCE加在一起重新编译。</p>
		<p>apache的缺省配置文件一般比较大：可以使用去掉注释的方法精简一下：然后再进入具体的培植过程能让你更快的定制出你所需要的。<br />
grep -v "#" httpd.conf.default &gt;httpd.conf</p>
		<p>需要修改的通用项目有以下几个：</p>
		<p>#服务端口，缺省是8080，建议将整个Apache配置调整好后再将服务端口改到正式服务的端口<br />
Port 8080 =&gt; 80</p>
		<p>#服务器名：缺省没有<br />
ServerName name.example.com<br /><br />
#最大服务进程数：根据服务容量预测设置<br />
MaxClients 256 =&gt; 800</p>
		<p>#缺省启动服务后的服务进程数：等服务比较平稳后，按平均负载下的httpd个数设置就可以<br />
StartServers 5 =&gt; 200</p>
		<p>不要修改：<br />
以前有建议说修改：<br />
MinSpareServers 5 =&gt; 100<br />
MaxSpareServers 10 =&gt; 200</p>
		<p>但从我的经验看来：缺省值已经是非常优化的了，而且让Apache自己调整子共享进程个数还是比较好的。</p>
		<p>特别修改：<br />
在solaris或一些比较容易出现内存泄露的应用上：<br />
MaxRequestsPerChild 0 =&gt;3000</p>
		<p>
				<b>
						<a name="module">应用模块和工具的安装</a>配置：</b>
		</p>
		<p>由于使用模块动态加载的模式，所以可以方便的通过简单的配置调整来把Apache定制成你需要的：最好把不常用模块全部清除（无论处于安全还是效
率）。<br />
比如：对于静态页面服务器：就什么其他子模块都不加载，对于PHP应用就加上PHP模块，对于JAVA应用就把Resin模块加载上。而且各种模块的插拔
非常简单，这样调试过程中就可以简单的通过注释掉不需要的模块，而不用重新编译。</p>
		<p>一般说来，可以不需要的模块包括：<br />
#LoadModule env_module libexec/mod_env.so<br />
#LoadModule negotiation_module libexec/mod_negotiation.so<br />
#LoadModule status_module libexec/mod_status.so<br />
#server side include已经过时了<br />
#LoadModule includes_module libexec/mod_include.so<br />
#不需要将没有缺省index文件的目录下所有文件列出<br />
#LoadModule autoindex_module libexec/mod_autoindex.so<br />
#尽量不使用CGI：一直是Apache安全问题最多的地方<br />
#LoadModule cgi_module libexec/mod_cgi.so<br />
#LoadModule asis_module libexec/mod_asis.so<br />
#LoadModule imap_module libexec/mod_imap.so<br />
#LoadModule action_module libexec/mod_actions.so<br />
#不使用安全认证可以大大提高访问速度<br />
#LoadModule access_module libexec/mod_access.so<br />
#LoadModule auth_module libexec/mod_auth.so<br />
#LoadModule setenvif_module libexec/mod_setenvif.so</p>
		<p>最好保留的有：<br />
#用于定制log格式<br />
LoadModule config_log_module libexec/mod_log_config.so<br />
#用于增加文件应用的关联<br />
LoadModule mime_module libexec/mod_mime.so<br />
#用于缺省index文件：index.php等<br />
LoadModule dir_module libexec/mod_dir.so</p>
		<p>可用可不用的有：<br />
#比如：需要在~/username/下调试php可以将<br />
LoadModule userdir_module libexec/mod_userdir.so<br />
#比如：需要将以前的URL进行转向或者需要使用CGI script-alias<br />
LoadModule alias_module libexec/mod_alias.so<br /></p>
		<p>常用的模块：<br />
最常用的可能就是php和JAVA应用服务器的前端，此外，从性能上讲利用mod_gzip可以减少40%左右的流量，减少机器用于传输的负载，而
mod_expires可以减少10%左右的重复请求，让重复的用户对指定的页面请求结果都CACHE在本地，根本不向服务器发出请求。</p>
		<p>建议将所有MODULE的配置都放到相应模块的配置内部：&lt;IfModule some_module.c&gt;some_module
config &lt;/IfModule&gt;</p>
		<p>PHP的安装：<br />
/path/to/php_src/configure --with-apxs=/path/to/apache/bin/apxs
--with-other-modules-you-need<br />
需要修改的配置：<br />
AddType application/x-httpd-php .php .php3 .any_file_in_php</p>
		<p>resin的安装设置：<br />
/path/to/resin/src/configure --with-apxs=/path/to/apache/bin/apxs <br /><br />
具体的resin设置放在另外一个文件中：比如/home/resin/conf/resin.conf<br />
&lt;IfModule mod_caucho.c&gt;<br />
CauchoConfigFile /path/to/apache/conf/resin.conf<br />
&lt;/IfModule&gt;</p>
		<p>mod_expires的安装配置：<br />
&lt;IfModule mod_expires.c&gt; <br />
    ExpiresActive on<br />
    ExpiresByType image/gif "access plus 1 month"<br />
    ExpiresByType text/css "now plus 1 month"<br />
    ExpiresDefault "now plus 1 day"<br />
&lt;/IfModule&gt;</p>
		<p>注释：<br />
所有的.gif文件1个月以后过期<br />
所有的文件缺省1天以后过期<br /></p>
		<p>
				<a href="http://www.chedong.com/tech/compress.html">mod_gzip的安装</a>
				<br />
http://www.chedong.com/tech/compress.html<br /></p>

日志的轮循：cronolog的安装和设置<br /><p>cronolog可以非常整齐的将日志按天轮循存储<br />
缺省编译安装到/usr/local/bin/下，只需要将配置改成：</p><p>CustomLog "|/usr/local/sbin/cronolog
/home/apache/logs/%w/access_log" combined<br /></p>

日志将按天截断并存放在以星期为目录名的目录下：比如：log/1是周一，log/5是周五, log/0是周日<br /><br />

用gzip压缩每天的日志：<br />

30 4 * * * /usr/bin/gzip -f /home/apache/logs/`date -d yesterday

+%w`/access_log<br /><br />

日志的定期删除：<br />

30 5 * * */usr/bin/find /home/apache/logs/ -name access_log.gz -mtime
+3 |xargs -r /bin/rm -f<br /><p><b><a name="maintain">升级维护</a>：</b></p><p>由于使用动态模块加载方式（DSO模式)安装Apache，Apache的HTTPD核心服务和应用模块以及应用模块之间都变的非常灵活，建议将所
有独立模块的配置都放在<br />
&lt;IfModule mod_name&gt;<br />
CONFIGURATIONS..<br />
&lt;/IfModule&gt;<br />
里，这样配置非常容易通过屏蔽某个模块来进行功能调整：比如：<br />
#AddModule mod_gzip.c<br />
就屏蔽了mod_gzip，而其他模块不首任何影响。</p><p>安装和维护过程：</p><ul><li>系统安装：系统管理员的职责就是安装系统和一个按照DSO模式安装的Apache，然后COLON。</li><li> 应用安装：由应用管理员负责具体应用所需要的模块并设置HTTPD。</li><li> 系统升级：系统管理员：升级系统/升级Apache</li><li>应用升级：应用管理员：升级应用模块：PHP CAUCHO等</li><li>系统备份/恢复：如果Apache不在缺省的系统盘上，只需要将Apache目录备份就可以了，遇到系统分区的硬件问题直接使用预先准备好的
系统COLON，再直接将Apache所在物理盘恢复就行了。</li></ul><table border="1"><tbody><tr><td style="text-align: right;">系统管理员：Apache的最简化安装</td><td colspan="3" align="center">OS + Apache (httpd core only)</td></tr><tr><td style="text-align: right;">应用管理员：应用模块定制</td><td>纯静态页面服务<br />
core<br /></td><td>PHP动态页面<br />
core+so<br />
+php<br /></td><td>JAVA应用<br />
core+so<br />
+caucho<br />
+ssl</td></tr><tr><td style="text-align: right;">应用例子：</td><td>www.example.com<br />
image.example.com<br /></td><td>bbs.example.com</td><td>mall.example.com</td></tr></tbody></table><p><br /></p><p>例子：Apache和PHP模块的独立升级。</p><p>如果Apache是按照以下方式安装：<br />
./configure --prefix=/home/apache --enable-shared=max
--enable-module=most <br />
PHP是按照以下方式安装：<br />
./configure --with-apxs=/home/apache/bin/apxs --enable-track-vars
--with-mysql<br /><br />
以后单独升级Apache的时候，仍然是：<br />
./configure --prefix=/home/apache --enable-shared=max
--enable-module=most <br />
make<br />
su<br />
#/home/apache/bin/apachectl stop<br />
#make install<br /><br />
单独升级php时，仍然是：<br />
./configure --with-apxs=/home/apache/bin/apxs --enable-track-vars
--with-mysql<br />
make<br />
su<br />
#/home/apache/bin/apachectl stop<br />
#make install<br />
#/home/apache/bin/apachectl start<br /></p><p>基于反相代理的WEB加速：<br />
squid和mod_proxy都可以实现反相代理加速。而基于缓存的代理加速比起原有WEB服务，速度会有数量级的提升。<br /><br /></p><p>小提示：</p><p>Apache安装后，缺省根目录下没有但很有用的2个文件:</p><ul><li>favicon.ico:
favicon.ico是一个16x16的站点图标文件，如果浏览器发现有这个文件，在地址栏中会用这个图标替换调浏览器的网页图标。IE6和
MOZILLA等主流浏览器都支持这个功能。<br />
例如： <a href="http://www.chedong.com/favicon.ico">http://www.chedong.com/favicon.ico<br /></a></li><li>robots.txt: 用于告诉搜索引擎的爬虫程序（spider）网站那些页面可以被索引，那些不可以。<br />
具体说明请参考：<a href="http://www.robotstxt.org/wc/robots.html">http://www.robotstxt.org/wc/robots.html</a></li></ul><p>参考文档：</p><p>Apache项目<br /><a href="http://httpd.apache.org/">http://httpd.apache.org</a></p><p>PHP<br /><a href="http://www.php.net/">http://www.php.net</a></p><p>Resin<br /><a href="http://www.caucho.com/">http://www.caucho.com</a></p><p>mod_gzip<br /><a href="http://sourceforge.net/projects/mod-gzip/">http://sourceforge.net/projects/mod-gzip/</a></p><p>Cronolog<br /><a href="http://www.cronolog.org/">http://www.cronolog.org</a></p><p>mod_expires<br /><a href="http://httpd.apache.org/docs/mod/mod_expires.html">http://httpd.apache.org/docs/mod/mod_expires.html</a><br /></p><p>面向搜索引擎的CMS设计：<br /><a href="http://www.chedong.com/tech/cms.html">http://www.chedong.com/tech/cms.html</a><br /></p>

原文出处：http://www.chedong.com/tech/apache_install.html"&gt;http://www.chedong.com/tech/apache_install.html<img src ="http://www.blogjava.net/aspirin/aggbug/37908.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/aspirin/" target="_blank">aspirin</a> 2006-03-28 22:34 <a href="http://www.blogjava.net/aspirin/archive/2006/03/28/37908.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>