nginx版本更新到0.8.50

Changes with nginx 0.8.50                                        02 Sep 2010

    *) Feature: the "secure_link", "secure_link_md5", and
       "secure_link_expires" directives of the ngx_http_secure_link_module.

    *) Feature: the -q switch.
       Thanks to Gena Makhomed.

    *) Bugfix: worker processes may got caught in an endless loop during
       reconfiguration, if a caching was used; the bug had appeared in
       0.8.48.

    *) Bugfix: in the "gzip_disable" directive.
       Thanks to Derrick Petzold.

    *) Bugfix: nginx/Windows could not send stop, quit, reopen, and reload
       signals to a process run in other session.

Mr.zhang翻墙软件,已放到软件区

首页是https://crossthewall.net/index.htm(已经被和谐了)据说已经出了0.09版本了,我包里是0.06、0.08和好不容易找到的0.09版本,大家先试试吧,官方只放出了0.06和0.08两个版本

演示 google

来自官方的介绍:

《西厢记》之张生,于普救寺偶遇佳人崔莺莺,两人因吟诗而生情。 张生因急于相见莺莺,曾于月下翻墙入园。后虽经百转曲折,有情人终成眷属。 今天之互联网,并非信手拈来俱鲜花,处处沃土皆营养。然而,不入园中,怎知园中春色如许。 这一切,取决于你迈出第一步,Cross The Wall
Ver: Mr.Zhang 0.08 for Windows (update 2010.6.24) Biz: Mr.ZhangBiz 0.06 for Windows (update 2010.8.16)

rrdtool 结贴要延期了,现在在搞一个页面访问控制系统

说说这个系统特别之处吧,这个系统的主控模块是用C语言写的,而显示的结果是nginx来呈现的,这就要求nginx必须能调用C程序,目前的测试结果是,nginx不仅支持C及C++语言,同时还能支持perl和JAVA,但必须要有fastcgi 库来支持,等项目完成后,我将会写一个如何让nginx支持fastcgi的文章。

shell加密工具shc

辛辛苦苦写了一堆shell,由于某些不可见人的原因,我要把它们加密,就找到了shc这个工具
1) 工具说明
shell脚本是可读写的, 很有可能会泄露敏感信息, 如用户名/密码/路径/IP等. 同样在shell脚本运行时会也泄露敏感信息. shc是一个加密shell脚本的工具, 它的作用是把shell脚本转换为一个可执行的二进制文件. 这就很好的解决了上述问题.

下载安装
下载: https://www.datsi.fi.upm.es/~frosal/sources/shc-3.8.7.tgz

安装:

 mkdir /usr/local/man/man1/ (install时会把man文件放入该目录,如果该目录不存在需提前建好)

 tar vxf shc-3.8.7.tgz && cd shc-3.8.7

 make test

 make strings

 make install

     Installing shc and shc.1 on /usr/local
     Do you want to continue? <输入y>
install -c -s shc /usr/local/bin/
install -c -m 644 shc.1 /usr/local/man/man1/

用法:

 which shc

/usr/local/bin/shc

 shc

shc parse(-f): No source file specified
shc Usage: shc [-e date] [-m addr] [-i iopt] [-x cmnd] [-l lopt] [-rvDTCAh] -f script

3) 加密脚本

 shc -v -f test.sh

-v是verbose模式, 输出更详细编译日志;
-f 指定脚本的名称.
$ ll test*
-rwxr-xr-x  1 oracle oinstall   1178 Aug 18 10:00 test.sh
-rwx–x–x  1 oracle oinstall   8984 Aug 18 18:01 test.sh.x
-rw-r–r–  1 oracle oinstall  14820 Aug 18 18:01 test.sh.x.c
$ file test.sh.x
test.sh.x: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), stripped

可以看到生成了动态链接可执行二进制文件test.sh.x和C源文件testup.sh.x.c, 注意生成的二进制文件因为是动态链接形式, 所以在其它平台上不能运行. 

4) 生成静态链接的二进制可执行文件
可以通过下面的方法生成一个静态链接的二进制可执行文件:
$ CFLAGS=-static shc -r -f test.sh
$ file testup.sh.x 

5) 通过sch加密后的脚本文件很安全吗?
一般来说是安全的, 不过可以使用gdb和其它的调试工具获得最初的源代码. 如果需要更加安全的方法, 可以考虑使用wzshSDK. 另外shc还可以设置脚本的运行期限和自定义返回信息:
$ shc -e 03/31/2007 -m "the mysql backup scrīpt is now out of date." -f test.sh
-e表示脚本将在2007年3月31日前失效, 并根据-m定义的信息返回给终端用户.

关于 favicon.ico

今天tail -f error.log的时候发现报错,全是没找到favicon.ico文件,google了一下,发现IE在将你的网站加入收藏夹的时候自动会搜寻你网站下的 /favicon.ico 文件(如果你没有特别指定的话),其实这就是我们常常说的收藏夹的图标文件。所以根据这个也可以统计有多少人将我们的网站加入了收藏夹。
具体请看
What is Favicon.ico? Personalise Your Site’s Bookmark

不过一般的情况下功能简单而且免费的 Icon Edit就足够了。

今天让我们说说rinetd吧

在Rob Flickenger写的linux server hacks里有过介绍,主要功能是可以把本地服务器流量传递给远程服务器,此工具可以运用在linux上以及win上。
rinetd默认的配置文件是/etc/rinetd.conf,格式很简单
源IP 源端口 目标IP 目标端口 比如
0.0.0.0 1234 1.1.1.1 22
在windows上,我们可以使用rinetd唯一的有用参数-c 来指定rinetd.conf的地址,一般来说应把rinetd.conf放在和rinetd.exe同一目录中,这样就可以用如下命令调用了
rinetd -c rinetd.conf
执行完后,DOS窗口不会退出就是成功了,你可以看看本地机器的1234启动了没有,如果启动了用putty连接看看是否可以连到1.1.1.1上?特别注意一下,用putty连接的时候IP要写127.0.0.1,否则会报错。

为了方便下载,已经将软件放到
https://techlife.com.cn/soft/里了

今天发现的一个问题

今天领导说写个脚本查查磁盘空间,因每台机器不一样,比如有的有好几块硬盘,有的就有一块,还有比如说有的是linux,有的是freebsd,有的是solaris,与其这样不如直接写个show df 的脚本好了,我是这样写的

/bin/bash

$disk = df -lh
echo $disk
结果非常糟糕,显示到一行去了,其实本意是直接按命令格式输出就可以了,其实解决相当简单,我想是因为有时候我们写多了脚本,脑子习惯复杂思考了,解决如下

/bin/bash

df -lh > 1.txt
完了!

实战NGINX中的错误

今天又空看了两章,发现有个明显错误,在平滑重启nginx的时候,张宴写了一条命令
kill -HUP /usr/local/webserver/nginx/logs/nginx.pid
而其实应该是
kill -HUP cat /usr/local/webserver/nginx/logs/nginx.pid

今天在某论坛看到有人提这个问题,这说明一般我们看书时尤其是新出版的,一定要加以消化,不能人云亦云,写在这里给大家提个醒而已。