经常需要配置Nginx ,其中有许多以 $ 开头的变量,经常需要查阅nginx 所支持的变量。Nginx支持的http变量实现在ngx_http_variables.c 的 ngx_http_core_variables存储实现:ngx_http_core_variables static ngx_http_variable_t ngx_http_core_variables[] = { { ngx_string("http_host"), NULL, ngx_http_variable_header, offsetof(ngx_http_request_t, ... Read More
posted @ 2012-04-22 22:26 Andy_YF Views(1551) Comments(0) Diggs(0)
1**:请求收到,继续处理2**:操作成功收到,分析、接受3**:完成此请求必须进一步处理4**:请求包含一个错误语法或不能完成5**:服务器执行一个完全有效请求失败100——客户必须继续发出请求101——客户要求服务器根据请求转换HTTP协议版本200——交易成功201——提示知道新文件的URL202——接受和处理、但处理未完成203——返回信息不确定或不完整204——请求收到,但返回信息为空205——服务器完成了请求,用户代理必须复位当前已经浏览过的文件206——服务器已经完成了部分用户的GET请求300——请求的资源可在多处得到301——删除请求数据302——在其他地址发现了请求数据30 Read More
posted @ 2012-04-22 22:19 Andy_YF Views(199) Comments(0) Diggs(0)
如果参数是一个函数指针,调用者可以传递一个函数的地址给实现者,让实现者去调用它,这称为回调函数(Callback Function)。例如qsort(3)和bsearch(3)。回调函数示例:void func(void (*f)(void *), void *p);调用者实现者提供一个回调函数,再提供一个准备传给回调函数的参数。把回调函数传给参数f,把准备传给回调函数的参数按void *类型传给参数p在适当的时候根据调用者传来的函数指针f调用回调函数,将调用者传来的参数p转交给回调函数,即调用f(p);以下是一个简单的例子。实现了一个repeat_three_times函数,可以把调用者传来 Read More
posted @ 2012-04-22 22:14 Andy_YF Views(246) Comments(0) Diggs(0)
一.前言1.编译器优化介绍:由于内存访问速度远不及CPU处理速度,为提高机器整体性能,在硬件上引入硬件高速缓存Cache,加速对内存的访问。另外在现代CPU中指令的执行并不一定严格按照顺序执行,没有相关性的指令可以乱序执行,以充分利用CPU的指令流水线,提高执行速度。以上是硬件级别的优化。再看软件一级的优化:一种是在编写代码时由程序员优化,另一种是由编译器进行优化。编译器优化常用的方法有:将内存变量缓存到寄存器;调整指令顺序充分利用CPU指令流水线,常见的是重新排序读写指令。对常规内存进行优化的时候,这些优化是透明的,而且效率很好。由编译器优化或者硬件重新排序引起的问题的解决办法是在从硬件(或 Read More
posted @ 2012-04-22 22:10 Andy_YF Views(204) Comments(0) Diggs(0)
进入与离开要 进入 VIM 可以直接在系统提示下键入 VIM <档案名称>,VIM 可以自动帮你载入所要编辑的文件或是开启一个新文件。进入 VIM 后屏幕左方会出现波浪符号,凡是行首有该符号就代表此列目前是空的。要离开 VIM 可以在指令模式下键入 :q, :wq 指令则是存档後再离开(注意冒号)。要切换到指令模式下则是用 [ESC] 键,如果不晓得现在是处於什麽模式, 可以多按几次 [ESC],系统会发出哔哔声以确定进入指令模式。VIM 输入模式要如何输入资料呢?有好几个指令可以进入输入模式:新增 (append)a 从光标所在位置后面开始新增资料,光标后的资料随新增资料向后移动。A 从光标 Read More
posted @ 2012-04-22 22:04 Andy_YF Views(297) Comments(0) Diggs(0)
Lost your shell connection? Need multiple shell sessions?You are logged into your remote server viaSSHand happily plucking along at your keyboard and then it happens. Suddenly, the characters stop moving and then you get the dreaded “Connection Closed” message. You have just lost your session. You w Read More
posted @ 2012-04-22 21:57 Andy_YF Views(201) Comments(0) Diggs(0)
1.首先,使用tar -xzvf来解开这个包(其他格式利用对应的解压命令进行解压),如:# tar -xzvf apache_1_3_6_tar.gz******************************************************************tar命令参数解释:x 从档案文件中释放文件。z 用gzip来压缩/解压缩文件,加上该选项后可以将档案文件进行压缩,但还原时也一定要使用该选项进行解压缩。v 详细报告tar处理的文件信息。如无此选项,tar不报告文件信息。f 使用档案文件或设备,这个选项通常是必选的。************************* Read More
posted @ 2012-04-22 21:53 Andy_YF Views(255) Comments(0) Diggs(0)
MySQL的字符集支持(Character Set Support)有两个方面:字符集(Character set)和排序方式(Collation)对于字符集的支持细化到四个层次:服务器(server),数据库(database),数据表(table)和连接(connection)1.MySQL默认字符集 MySQL对于字符集的指定可以细化到一个数据库,一张表,一列,应该用什么字符集。但是,传统的 程序在创建数据库和数据表时并没有使用那么复杂的配置,它们用的是默认的配置,那么,默认的配置从何而来呢? (1)编译MySQL 时,指定了一个默认的字符集,这个字符集是 latin1; (2)安装My Read More
posted @ 2012-04-22 21:47 Andy_YF Views(178) Comments(0) Diggs(0)
一、安装:以MySQL-server-4.0.14-0.i386.rpm为例,放在/data目录下cd /data安装服务端:rpm -ivh MySQL-server-4.0.14-0.i386.rpm安装完成后在/usr/share/mysql目录中会有一个mysql的启动脚本mysql.server及示例配置文件等(如my-huge.cnf、my-large.cnf、my-medium.cnf)配置文件:拷贝一个示例配置文件作为mysql的配置文件:cp /usr/share/mysql/my-medium.cnf /etc/my.cnfrpm包安装完后自动将mysql安装成系统服务,所 Read More
posted @ 2012-04-22 21:41 Andy_YF Views(196) Comments(0) Diggs(0)
RPM 有五种基本的操作方式(不包括创建软件包): 安装, 卸载, 升级, 查询,和验证。 下面我们就来逐一的讲解吧。一、 安装RPM包RPM 软件包通常具有类似foo-1.0-1.i386.rpm 的文件名。其中包括 软件包的名称(foo),版本号(1.0),发行号(1), 和 硬件平台(i386)。安装一个软件包只需简单的键入以下命令:$ rpm -ivh foo-1.0-1.i386.rpm foo ####################################RPM安装完毕后会打印出软件包的名字(并不一定与文件名相同), 而后打印一连串的#号以表示安装进度。虽然软件包的安装被 Read More
posted @ 2012-04-22 21:36 Andy_YF Views(399) Comments(0) Diggs(0)