Leon's blog

每天活的有趣一点

之前的Zen coding插件,现在升级成了Emmet。主要功能还是Zen coding,不过现在除了支持Html,还进一步的把这种快速生成代码的方式扩展到了CSS。而且现在好像架构是基于PyV8用Javascript写的了。另外就是在扩展方面支持强大了很多,这个我没仔细看。

别的不说了,可以看官方很Cool的在线文档。这里就举两个例子。

1. HTML

输入如下文字:div>(header>ul>li*2>a)+footer>p,按下tab,将生成这样的代码:

<div>
    <header>
        <ul>
            <li><a href=""></a></li>
            <li><a href=""></a></li>
        </ul>
    </header>
    <footer>
        <p></p>
    </footer>
</div>

输入如下文字:ul.generic-list>lorem10.item*4,按下tab,将生成这样的代码:

<ul class="generic-list">
    <li class="item">Lorem ipsum dolor sit amet, consectetur adipisicing elit. Nam vero.</li>
    <li class="item">Laboriosam quaerat sapiente minima nam minus similique illum architecto et!</li>
    <li class="item">Incidunt vitae quae facere ducimus nostrum aliquid dolorum veritatis dicta!</li>
    <li class="item">Tenetur laborum quod cum excepturi recusandae porro sint quas soluta!</li>
</ul>

2. CSS

输入如下文字:bgc#1,按下tab,将生成这样的代码:

background-color: #111;

输入如下文字:bdrs5,按下tab,将生成这样的代码:

-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;

最后放一个Emmet cheat sheet,方便参考。

如何使用Godaddy的折扣码

抢沙发

选好要购买的域名,或者要续费的域名后;进入Godaddy的购物车,在里输入折扣码,点击“Apply”按钮。 这时后如果折扣码有效果,订单的价格会相应改变。如果价格没有改变,删除这个折扣码,再试其他的。

使用折扣码但是价格没有改变,可能的原因是这个折扣码已经过期,或者折扣码适用的购买类型跟你正在进行的购买类型不一致。

比如Godaddy经常发达你的信箱里的折扣码,大部分都只适合用于新购买域名,而不适用于域名续费(Renewals)。这点一定要注意,一不小心就按照原价renew你的域名了,这也算是销售技巧吧。

你看我收到的Godaddy的Email下面有这么一行小字,仔细看,很关键呕。

*Not applicable to ICANN fees, taxes, transfers, premium domains, Search Engine Visibility advertising budget, or gift cards. Cannot be used in conjunction with any other offer, sale, discount or promotion. After the initial purchase term, discounted products will renew at the then-current renewal list price. Offer does not apply to renewals.

最后如果你最近在Godaddy上购买域名试试这几个折扣码能不能帮你省点钱。如果你有好的折扣码,也欢迎贴在评论里,方便他人使用。:)

GDBBREN8 (省40%,支持Renewals)
98CENTS  ($1.16注册域名)
GD50bbpd5 (省40%,支持Renewals)
gofa1003aa

update:

WordPress遭遇密码暴力破解

抢板凳

今天发现我的blog很慢,老是不能访问,进到AWS的后台发现CPU出奇的高,使用top查看显示大部分cpu是httpd进程占用掉了。 像我这样的个人博客,又不是什么知名人士,不会有这么多访问量呀。奇怪。

tail了一下apache的access log,发现有大量的ip不停的访问wp-login.php和wp-cron.php。看样子,是在尝试请举密码呀。怎么会有这么好的闲情雅致啊!

开始我尝试在.htaccess里添加deny纪录,但是效果好像不太明显。而且过来的ip还挺多的。

后来就不停的用tail查找,过来的ip,有新的就加到iptables里去。结果加了一大堆,也不知道有没有误杀的

tail -f /var/log/apache/access-log|grep &quot;wp-login.php&quot;</p>

<p>iptables -A INPUT -s 176.32.73.25,203.87.163.28,114.22.240.134,219.160.191.119,125.198.142.158,112.211.182.193,27.252.29.108,2.133.109.118,125.198.142.158,190.232.183.165 -j DROP</p>

<p>iptables -A INPUT -s 126.43.103.137,190.233.123.206,110.168.69.24,36.70.74.217,95.5.26.102,89.211.208.97,190.43.131.87,114.187.69.123,110.55.3.178,201.238.142.88,190.236.38.134,85.185.253.13,200.232.192.182,190.43.165.126,1.4.253.128,189.191.104.129  -j DROP</p>

<p>iptables -A INPUT -s 42.124.2.225,2.184.240.116,93.63.34.217,114.49.3.214,219.110.148.88,125.60.240.234,112.202.135.117,112.105.4.5,217.219.105.248,91.212.80.170,217.219.165.25,36.238.104.147,120.60.31.149,124.122.70.108 -j DROP</p>

<p>iptables -A INPUT -s 58.213.138.131,186.79.160.147,94.20.163.250,180.190.130.101,119.46.191.21,42.118.159.104,189.154.8.49,124.120.120.85,58.9.136.173,37.218.185.184,187.142.102.138,223.204.212.16,223.205.61.135,58.89.228.59,181.65.55.52,112.204.218.181,180.94.217.91 -j DROP</p>

<p>iptables -A INPUT -s 2.146.139.228,94.183.40.67,79.175.182.21,188.34.7.46,93.33.34.215,2.180.82.80,85.119.183.223,184.147.220.2,203.158.26.86,182.52.108.198,80.78.247.92,93.170.50.174,92.114.86.81 -j DROP

iptables里添加了那些规则可以使用iptable -L查看。

如果真的有误杀的,可以通过iptables -D命令取消对应的规则。

iptables -D INPUT -s xx.xxx.xx.xx -j DROP

如果搞乱了,也可以使用iptables -F清空所有规则。

    iptables -F INPUT

关于如何使用iptables,NetTuts上有一篇很好的文章:The Linux Firewall,简要讲解了iptables的管理,还介绍了如何用iptable做NAT。

但是被动的封ip有时候还是太慢,要盯着,不能自动完成。后来就看到了这个在Wordpress里限制密码重试次数的插件:Limit Login Attempts。现在基本上能满足防止暴力破解Wordpress密码的需求了。

iMentor Steve Jobs

抢沙发

Coach Bay从乔布斯那里学来的十条准则iMentor,很精彩记在这是,时刻提醒自己。

  1. Follow Your Heart
  2. Make a Dent in the Universe
  3. Think Different
  4. Sell Dreams, Not Products
  5. Make Products For Yourself
  6. Say No to 1,000 Things
  7. Keep It Simple
  8. Go For Excellence
  9. Break The Rules
  10. You Only Live Once

One More Thing

Don’t waste your time living someone else’s life. Stay hungry. Stay foolish.

继续阅读

一直是挪动光标来选择Mac上对话框的按钮的,很不方便。在Windows下这是很轻松的操作,用Tab在对话框上的按钮间切换,按Enter来做按下选中的按钮的操作。

其实Mac上也是类似的,只是设计上稍有不同。

第一,有一个缺省按钮,这个按钮是蓝色的,按下Enter对它操作(注意Enter永远只对这个按钮操作,这是跟Windows不同的地方)。

第二,通过Tab在按钮间切换,这是选中的按钮周边会有一圈蓝色的光晕,按下SpaceBar键对当前选中的按钮进行操作。

第三,没有了。

Mac dialogbox