<![CDATA[Snooda]]> http://www.ltylc2014.com/index zh-cn http://www.ltylc2014.com/read/281 <![CDATA[Thinkpad X200拆机及清灰]]> snooda <admin@snooda.com> Sat, 05 May 2012 07:59:32 +0000 http://www.ltylc2014.com/read/281
   底面的螺丝很利Q很快都拧开了,取下键盘和掌托,然后把屏q的Z拧开Q把屏幕下的u型塑料拿下来Q开始准备拆LQ主板弄不下来,被无U网卡压住了Q于是就开始拆无线|卡Q结果悲剧发生了Q拧下第一个螺丝后Q第二个Z拧了几下没拧下来Q因为选的十字Z刀头的寸大了点,又拧了几下,l果拧花了,鸭梨很大Q搞了半天搞不下来,只能先将旁边的声?sd模块拆下来,腑և地方Q捣鼓了半天搞不定,于是军_先搞个小刀把螺丝划Z个沟再拧Q找不到刀Q去区门口5角钱C个,回来发现Z拧v来跟豆腐一P用小刀划v来还挺硬Q把刀刀头都划^了,勉强在右边划了一个小沟,左边划了几个痕迹Q螺丝刀q是吃不上力气,C吃饭的日子,于是先吃了饭Q吃完饭惌v来指甲刀Q指甲刀一般比较厉宻I用指甲刀剪了几下左边Q果然剪Z个凹槽,q是不好用力Q但指甲刀也无能ؓ力了Q蛋|期间q试q用核桃夹夹住螺丝刀拧、用Z刀着侧边的凹槽用核桃Ҏ{方法,都纹丝不动。搞了很久耐心快到极限了,之前屏幕q和L上的无线|卡有信Lq接Q现在把信号U拔掉,屏幕取下Q然后换了一个稍一点的一字螺丝刀大力拧了几下Q期待奇q的发生Q结果发现螺丝真的动了。赶紧又拧了几下Q终于拧下来了?br/>
    L取下后直接就开始拆散热器了Q发现cpu上的三个大螺丝是用弹压的,估计防止力度q大把cpu压坏Q之前以为铜散热器下有空_里面是很多灰,l果拆下来后发现铜散热器直接是整个和cpu/gpu接触的,没有~隙Qcpu上是导热脂Qgpu上是导热LQ不知道是不是这么叫Q不q样子挺像)Q由于手头没有新的,所以不能重涂了Q怕灰进去,急忙又把散热器拧上了?br/>    然后拧风扇和散热器之间的三个ZQ上ơ就是在拧三个螺丝中的一个的时候拧不下来放弃的Q这ơ有了合适的Z刀Q很快拧下来了,把风扇和散热器分dQ散热器内侧的景象展现在眼前Q怪不得之前吹的没效果Q原来散热器和风扇之间的那个界面上覆盖了一层黑乎乎毛毛的东西,把散热器的缝隙塞住了一半,急忙把脏东西清理出来Q用清洁气吹了一下,q净了?br/>
    然后开始拧ZQ比较顺利,无线|卡右侧那个Z用旁辚w留槽的螺丝替换了Q发现那个位|的四个Z都跟豆腐一PE微一拧就׃Q别的地斚wq好Q看来thinkpad也开始偷工减料了Q我的还?8q的tpQ现在出的估计更没法用了?br/>
    拧好后用鲁大师看了看Q貌似效果不错,不过压力压一会后q是比较烫,但^时用时底温度降下来了Q爽?br/>


Tags - , ]]>
http://www.ltylc2014.com/read/264 <![CDATA[为blogdping插g-自动通知搜烦引擎]]> snooda <admin@snooda.com> Fri, 13 Apr 2012 14:13:07 +0000 http://www.ltylc2014.com/read/264     之前一直懒得搞Q今天弄了一下?br/>    参照癑ֺ站长工具里提供的格式Q搞了一个,试试是否好用呢?br/>
    d了baidu和google的ping地址Q?br/>
    http://ping.baidu.com/ping/RPC2
    http://blogsearch.google.com/ping/RPC2
Tags - ]]>
http://www.ltylc2014.com/read/253 <![CDATA[nginx做反向代理proxy_pass,proxy_redirect的用]]> snooda <admin@snooda.com> Sat, 10 Mar 2012 17:39:45 +0000 http://www.ltylc2014.com/read/253     假设前端url是example.com。后端server域名是in.comQ那么后端server在返回refresh或location的时候,host为in.comQ显然这个信息直接返回给客户端是不行的,需要nginx做{换,q时可以讄:
    proxy_redirect http://in.com  /
    nginx会将host及port部分替换成自w的server_name及listen port。不q这U配|对server_name有多个值的情况下支持不好?br/>我们可以用nginx内部变量来解册一问题Q?br/>    proxy_redirect http://in.com http://$host:$server_port


    搞定

    如果不设定的话,proxy_redirect默认是default属性,官网例子是这样介ldefault的:
引用
location /one/ {
  proxy_pass       http://upstream:port/two/;
  proxy_redirect   default;
}

location /one/ {
  proxy_pass       http://upstream:port/two/;
  proxy_redirect   http://upstream:port/two/   /one/;
}


  
    我试了下Qlocation /{}规则时似乎不太正常,会导致location为空。这个有待详l考证
Tags - , , ]]>
http://www.ltylc2014.com/read/251 <![CDATA[目理软g--trac安装手记]]> snooda <admin@snooda.com> Wed, 07 Mar 2012 17:17:25 +0000 http://www.ltylc2014.com/read/251
首先安装setuptools。这个可以用apt或yum安装Q也是一个类gapt的包理器,是针对python的。安装后可用easy_install命o
然后配置PYTHONPATHQ用easy_install默认是安装到pȝ路径下的。需要root权限。不推荐使用q种方式Q这样会把文件放到用户不可控的位|,Z后的升备䆾带来困难。所以就需?-install-dir参数Q?-prefix参数无效Q不知ؓ何)Q但单纯使用该参C报指定目录不在PYTHONPATH里。这是easy_install会推荐去看一个网,我看了下Q讲的几个方法都很繁琐,也没什么理由。其实只需要export PYTHONPATH=${PYTHONPATH}:your_dir卛_。在.bash_profile里设|一下,避免每次都要手动?br/>q里?bash_profile里设|一下alias easy_install='easy_install --install-dir=your_dir'Q这样就不用每次安装旉手动输入一大坨地址了?br/>讄完后source .bash_profile生效一下?br/>然后开始安装,先执行:easy_install Babel==0.9.5   q个一定要装,否则安装后的trac没有中文?br/>然后easy_install Trac
okQtrac的安装就完成了?br/>
现在需要徏立项目,trac需要ؓ每个目建立一个实例。这时在your_dir里找到trac-adminQ这个是用来理目实例的工兗?br/>q行Qtrac-admin your_proj_dir initenv
会提C项目名和用的数据源?br/>在数据源那里我用官Ҏ荐的Qmysql://name:password@localhost:3306/test报错Qtrac TypeError: unsupported operand type(s) for /: 'int' and 'NoneType'   看了下代码,是数据库没有配成utf8字符集导致的。配了一下,ok?br/>建立数据库时要用:CREATE DATABASE IF NOT EXISTS test default charset utf8 COLLATE utf8_general_ci;
建好目后就可以登陆q行q一步设|了?br/>首先配置用户hadmin权限Q?br/>trac-admin your_proj_dir permission add user TRAC_ADMIN
然后指定使用web authq行用户验证Q?br/>./tracd --port 8000 --auth="*,/your_dir/user.htdigest,trac" /your_dir
user.htdigest文g是用户名密码文gQ需要自q成,比较ȝQ反正也是时用,q里贴个成品Q?br/>
user:trac:fb05f80adf782a74f48a5acdc71dba65
q个的文件名和密码分别是“user”,“password?br/>启动后进入控制台
q入理Q插Ӟ开启TracAccountManager 0.3.2
修改trac.iniQ?br/>[components]下添加trac.web.auth.loginmodule = disabled
然后在account配置里SessionStore选一?Q(为啥不知道)Q但不开q个׃能注?br/>然后手动d理员̎?br/>然后可以?/tracd --port 8000  /your_dir   启动了?br/>用permission addl刚才添加的用户加上理员权限。然后ok了。可以用web登陆?br/>
然后dgit支持Q?br/>easy_install http://github.com/hvr/trac-git-plugin/tarball/master
暂时没找到支持远Egit的方?br/>

Tags - , ]]>
http://www.ltylc2014.com/read/250 <![CDATA[一个unsigned intQsize_tQ的坑]]> snooda <admin@snooda.com> Wed, 07 Mar 2012 14:24:19 +0000 http://www.ltylc2014.com/read/250 ~译器什么也没报。似乎没什么问题?br/>    后来凑y又改了一下另外一个程序的相同函数Q结果编译的时候报了errorQ说试图转换-1到unsigned。一查,果然E序中的异常分支q回?1.急忙改了q来?br/>    所以在q回值是size_tcd的函CQ异常处理要注意。(主要是cE序Q因为没有异常)
Tags - ]]>
http://www.ltylc2014.com/read/249 <![CDATA[为nginx生成自签名ssl证书]]> snooda <admin@snooda.com> Fri, 02 Mar 2012 16:00:14 +0000 http://www.ltylc2014.com/read/249 http://blog.duyao.de/posts/to-generate-an-ssl-certificate-for-nginx-in-linux.html

q里说下Linux pȝ怎么通过openssl命o生成 证书?br/>
首先执行如下命o生成一个key

openssl genrsa -des3 -out ssl.key 1024
然后他会要求你输入这个key文g的密码。不推荐输入。因Z后要lnginx使用。每ơreload nginx配置时候都要你验证q个PAM密码的?br/>
׃生成时候必输入密码。你可以输入?再删掉?br/>
mv ssl.key xxx.key
openssl rsa -in xxx.key -out ssl.key
rm xxx.key
然后Ҏq个key文g生成证书h文g

openssl req -new -key ssl.key -out ssl.csr
以上命o生成时候要填很多东?一个个看着写吧Q可以随便,毕竟q是自己生成的证书)

最后根据这2个文件生成crt证书文g

openssl x509 -req -days 365 -in ssl.csr -signkey ssl.key -out ssl.crt
q里365是证书有效期 推荐3650哈哈。这个大安意。最后用到的文件是key和crt文g?br/>
如果需要用pfx 可以用以下命令生?br/>
openssl pkcs12 -export -inkey ssl.key -in ssl.crt -out ssl.pfx
在需要用证书的nginx配置文g的server节点里加入以下配|就可以了?br/>
ssl on;
ssl_certificate /home/ssl.crt;
ssl_certificate_key /home/ssl.key;
ssl_session_timeout 5m;
ssl_protocols SSLv2 SSLv3 TLSv1;
ssl_ciphers ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP;
ssl_prefer_server_ciphers on;
然后重启nginx大功告成了
Tags - , ]]>
http://www.ltylc2014.com/read/248 <![CDATA[strncpy和snprintf]]> snooda <admin@snooda.com> Wed, 29 Feb 2012 11:06:33 +0000 http://www.ltylc2014.com/read/248     而snprintf会拷贝最大长?1的字W数Qƈ在后面加\0Q用一个字W串覆盖另一个时很不错?br/>    看了一下资料,发现snprintf的效率也要高于strncpy?br/>    日常字符串拷贝还是推荐snprintf?br/>Tags - , ]]> http://www.ltylc2014.com/read/235 <![CDATA[Soso Spider 不支持base属性]]> snooda <admin@snooda.com> Thu, 27 Oct 2011 11:17:50 +0000 http://www.ltylc2014.com/read/235
    在看日志的时候发C个有意思的现象Qgoogle和百度的蜘蛛今天很不z跃Q对于站点的大规模改变似乎ƈ不感兴趣Q对cssQjs不屑一,而soso的spider非常z跃Q把每个链接都详l爬了一遍,但发C个问题:

     新博客的url是采用base讄+相对url的模式,soso的spidergq不识别base标签Q直接把相对url附加到当前url之后q行抓取Q导致了很多404h。查了一下,base属性是html标准属性,soso不支持这个属性应该算是个bug了?br/>




Tags - , , , ]]>
http://www.ltylc2014.com/read/234 <![CDATA[HTTPhq回?04]]> snooda <admin@snooda.com> Thu, 27 Oct 2011 10:49:33 +0000 http://www.ltylc2014.com/read/234

http://www.laruence.com/2011/01/20/1844.html

之前和h讨论q这个问?,, 今天感冒在家休息, 回忆了一? 整理如下.

我们很多的应用在使用Ajax的时? 大多数情况都是询问型操作, 比如提交数据, 则Ajax只是期待服务器返?

{status: 0, message:""} //status 0代表成功, 非零的时? message中包含出错信?
我们知道HTTP的状态码, 2xx都是表示成功, 而HTTP?04(No Content)响应, pC执行成? 但是没有数据, 览器不用刷新页?也不用导向新的页?

在HTTP RFC 2616中关?04的描q如?

引用
If the client is a user agent, it SHOULD NOT change its document view from that which caused the request to be sent. This response is primarily intended to allow input for actions to take place without causing a change to the user agent’s active document view, although any new or updated metainformation SHOULD be applied to the document currently in the user agent’s active view.


cM的还?05 Reset Content, 表示执行成功, 重置面(Form表单).

引用
The server has fulfilled the request and the user agent SHOULD reset the document view which caused the request to be sent. This response is primarily intended to allow input for actions to take place via user input, followed by a clearing of the form in which the input is given so that the user can easily initiate another input action.


于是, 当有一些服? 只是q回成功与否的时? 可以试使用HTTP的状态码来作回信? 而省掉多余的数据传输, 比如REST中的DELETE和如上所q的查询式Ajaxh.

最后说?05, 205的意思是在接受了览器POSTh以后处理成功以后, 告诉览? 执行成功? hI用户填写的Form表单, 方便用户再次填写,

ȝ来说, 204适合多次对一个Itemq行更新, ?05则适合多次提交一个系列的Item.

? h? 目前q没有一个浏览器支持205, 大部分的览? 都会?05当做204或?00同样对待.
Tags - , , , , ]]>
http://www.ltylc2014.com/read/232 <![CDATA[博客|络优化-静态文件分]]> snooda <admin@snooda.com> Fri, 21 Oct 2011 16:51:40 +0000 http://www.ltylc2014.com/read/232
之前一直想当然Q认为是|络问题之类的。由于今天考虑C博客q移Q所以这个问题就提上日程了。于是打开chrome调试工具Q看了下旉?br />
一看不要紧Q终于找到瓶颈了。?br />
首先是jquery.jsQ最早用本机Q后来嫌大,用了google提供的,׃最q和谐,google的连接速度非常慢,D面一直卡在下载jquery.js上?br /> ׃是静态文Ӟ比较大的体积Q且seo无关Q这需要考虑把文件放在一个网l连接比较快的地方,昄攑ֈ国内是值得考虑的?br /> 首先试了一下一ƾ云存储产品Q发现速度倒是很快Q但是无法开启gzipQ这个无法忍受。{而考虑比较专业的web托管Q一惻Isae是专门q这个的Q直接放到sae上最好。于是在sae上申请了个应用,吧jquery.js和几个比较大的图片移q去了。立竿见影,速度提升极大?br />
再看Q发现google的统计代码加载也很慢Q反正我也不怎么看google的统计,注释掉?br />
再访问,飞一般的速度~~~~~~ ]]>
ɫav˵-seeɫԭɫԭվ-ллҪ-ŷƵ