Linux Apache开启gzip压缩提高网页下载速度

为了提高网页浏览速度,我们可以在服务器的apache开启gzip压缩功能,这样压缩使网页更小,自然下载需要的时间就更少了,用户体验更佳。下面来介绍如何开启这个功能。
1、首先得确认apache是否已经加载了mod_deflate模块。

  1. httpd -M

如何此模块不在列表中,可以参考这篇文章:如何安装加载mod_deflate模块
2、编译配置文件httpd.conf,增加支持gzip的文件类型,如下:

  1. <Location />
  2. AddOutputFilterByType DEFLATE text/plain
  3. AddOutputFilterByType DEFLATE text/css
  4. AddOutputFilterByType DEFLATE application/xml
  5. AddOutputFilterByType DEFLATE application/rss+xml
  6. AddOutputFilterByType DEFLATE application/atom_xml
  7. AddOutputFilterByType DEFLATE application/x-javascript
  8. AddOutputFilterByType DEFLATE application/x-httpd-php
  9. AddOutputFilterByType DEFLATE text/html
  10. </Location>

3、重启httpd。

  1. service httpd restart

4,检验是否已经开启成功。
可以到站长工具http://tool.chinaz.com/Gzips/输入网站的任一网址来测试。

Linux Apache安装加载mod_deflate模块

为了开启apache服务器中的gzip压缩功能,mod_deflate模块是必须安装加载的。现在介绍如何安装。
1、进入到mod_deflate.c目录

  1. cd /lamp/httpd-2.2.20/modules/filters

2、执行编译加载程序

  1. /usr/local/apache/bin/apxs -i -a -c mod_deflate.c

3、重新启动httpd程序

  1. service httpd restart

4、查看是否已经加载成功

  1. httpd -M

Apache实时监控虚拟主机进程

Apache有没有办法像top一样实时监控虚拟主机的进程呢?Apache的mod_status模块正好能解决这个问题,我们可以开启mod_status模块以html页面的形式来显示出各虚拟主机的进程状态。
这些html页面包含:

  • 正在伺服请求的工作者(线程或进程)数量
  • 空闲的工作者数量
  • 每个工作者的状态:已完成的请求数、已发送的字节数。(*)
  • 总访问数和已发送的字节总数(*)
  • 服务器自启动/重启以来经过的时间,服务器已经运行的时间。
  • 平均每秒请求数,平均每秒发送的字节数,平均每个请求发送的字节数。(*)
  • 每个工作者的当前CPU使用百分率,以及Apache的当前总计CPU使用百分率。(*)
  • 当前正在被处理的主机和请求(*)

下面我们来介绍如何安装mod_status和使用它。
1、检查是否加载mod_status模块
执行如下命令会列出当前加载的所有模块。

  1. httpd -M

如果没有找到mod_status模块,请参考这篇文章加载http://devops.webres.wang/2011/09/linux-apache-load-mod_status-module/
2、开启ExtendedStatus指令和启用状态报告
编译配置文件httpd.conf,加入如下代码:

  1. ExtendedStatus On
  2. <Location /server-status>
  3. SetHandler server-status
  4.  
  5. Order Deny,Allow
  6. Deny from all
  7. Allow from .foo.com
  8. </Location>

.foo.com是允许指定的域名访问状态页面,也可以允许IP。
保存退出,重启apache。
3、查看状态报告
通过http://your.server.name/server-status查看状态页面,也可以通过http://your.server.name/server-status?refresh=N隔N秒刷新页面,这样就可以达到实时监控了。

Linux Apache安装加载mod_status模块

想要实时查看apache虚拟主机进程,我们需要加载mod_stauts模块支持。
1、进入到mod_status.c目录

  1. cd /lamp/httpd-2.2.20/modules/generators

2、执行编译加载程序

  1. /usr/local/apache/bin/apxs -i -a -c mod_status.c

3、重新启动httpd程序

  1. service httpd restart

4、查看是否已经加载成功

  1. httpd -M

Linux apache安装加载mod_headers模块

今天为模块安装缓存插件WP Super Cache,需要用到apache的mod_headers模块。下面介绍如何安装加载mod_headers模块。
1、进入httpd源码包下的目录modules/metadata。

  1. cd /lamp/httpd-2.2.20/modules/metadata

2、执行ls | grep mod_headers.命令,我们发现有
mod_headers.c
mod_headers.dep
mod_headers.dsp
mod_headers.exp
mod_headers.mak
这几个文件,我们需要的是mod_headers.c。
3、执行安装命令。

  1. /usr/local/apache/bin/apxs -i -a -c mod_headers.c

4、重启httpd服务

  1. service httpd restart

Linux MAKEDEV命令详解

名称: MAKEDEV
  使用方法:
  MAKEDEV -V
  MAKEDEV [ -n ] [ -v ] update
  MAKEDEV [ -n ] [ -v ] [ -d ] device …
  使用说明:
  这个命令可以用法新增 /dev/ 下的装置档案,多数 distribution 已经将所有的档案都产生,故一般而言不太会需要用到这个命令。

Linux dumpkeys命令详解

名称: dumpkeys
  使用权限: 所有使用者
  使用方式:
  
   dumpkeys [ -hilfn1 -Sshape -ccharset –help –short-info
   –long-info –numeric –full-table –separate-lines
   –shape=shape –funcs-only –keys-only –compose-only
   –charset=charset ]
  
  使用说明:
  
  这个命令用来将键盘的对映表写到标准输出之中,输出的格式可以被 loadkeys 命令载入。而这个表格的功能在于将键盘硬件所产生的扫描码 (scan code),转换成 ASCII 或是任何的字串。
  
  这是在 Linux 上特有的指令,它允许你将键盘上的按键组合,如 ctrl-a. shift-a 等转换成适当的字串。例如你可以将 alt-ctrl-f12 定义成『linux』,以后只要按下 alt-ctrl-f12 就等于输入 linux 这个字了。
  
  要将 alt-ctrl-f12 定义成 linux 有二件事要做,首先你必需将 alt-ctrl-f12 这个按键组合定义成某个功能键,在这里我们使用 f20。
   control alt keycode 88 = F20
  
  上面的 keycode 88 便是 F12 这个键的硬件扫描码。下一步便是将 F20 这个功能键定义成 linux
   string F20=”linux”
  
  将包括这二行的档案用 loadkeys 载入后便可以用 alt-ctrl-f12 来输入 linux 了。chdrv, yact 等 console 模式中文系统便是使用这个功能来重新定义键盘。 选项:
  –shortinfo, -i
   将一些有关 linux 键盘驱动程序的资料显示在萤幕上。这包括了硬件扫描码的范围、功能键的数量、状态键的的数量等资讯。
  –longinfo, -l
  
   将键盘驱动程序的资讯用比较详尽的格式显示。
  –numeric, -n
  
   使用十六进位的方式显示资料,如果没有这个选项,dumpkeys 会自动的将十六进位的内部表示法转换成文字表示法。
  –full-table -f
   将整个表格完整的显示,预设情况下没有被定义的组合将不会被显示。
  
  –seperate–lines, -1 一行显示一个按键组合,预设模式下一个按键在不同状态码下的动作会被显示在同一行中。
  
  -S,–shape=[0-3] 设定输出的格式
  0: 预设格式(-S)
  1: 完整格式(–full-table)
  2: 单行格式(–seperate-lines)
  3: 简单格式,这个格式开始时使用完整格式,但遇到第一个没有定义的组合后就切到单行格式。
  
  –funcs-only
  –keys-only
  –composite-only
   只显示部份的资料。

Linux rdev命令详解

名称: rdev
  使用权限: 所有使用者
  使用方式: 使用这个指令的基本方式是: rdev [-rsvh ] [-o offset ] [ image [value [ offset ] ] ]
  但是随著使用者想要设定的参数的不同,底下的方式也是一样:
  
  
  rdev [ -o offset ] [ image [ root_device [ offset ] ] ]
  swapdev [ -o offset ] [ image [ swap_device [ offset ] ] ]
  ramsize [ -o offset ] [ image [ size [ offset ] ] ]
  videomode [ -o offset ] [ image [ mode [ offset ] ] ]
  rootflags [ -o offset ] [ image [ flags [ offset ] ] ]
  说明: rdev 可以用来取得或是设定开机核心影像档(kernel image)的各项参数,像是:
  
  root device
  swap device
  RAM disk
  video mode
  参数:
  
  -r
  -s
  -v
  -h
  -o
  范例: uptime
  其结果为:
  10:41am up 5 days, 10 min, 1 users, load average: 0.00, 0.00, 1.99

Linux loadkeys命令详解

名称: loadkeys
  使用权限: 所有使用者
  使用方式:
  loadkeys [ -d –default ] [ -h –help ] [ -q –quiet ] [ -v –verbose [ -v –verbose ]…] [ -m –mktable ] [ -c –clearcompose ] [ -s –clearstrings ] [ filename… ]
  使用说明:
  这个命令可以根据一个键盘定义表改变 linux 键盘驱动程序转译键盘输入过程。详细的说明请参考 dumpkeys。
  
  选项:
  -v –verbose
  印出详细的资料,你可以重复以增加详细度。
  
  -q –quiet
  不要显示任何讯息。
  -c –clearcompose
  清除所有 composite 定义。
  
  -s –clearstrings
  将定串定义表清除。
  
  相关命令:
  dumpkeys

Linux setleds命令详解

名称:setleds
  使用权限:一般使用者
  使用方式:
  setleds [-v] [-L] [-D] [-F] [{+|-}num] [{+|-}caps] [{+|-}scroll]说明:
  用来设定键盘上方三个 LED 的状态。在 Linux 中,每一个虚拟主控台都有独立的设定。
  参数:
  
  -F
  预设的选项,设定虚拟主控台的状态。
  -D
  除了改变虚拟主控台的状态外,还改变预设的状态。
  -L
  不改变虚拟主控台的状态,但直接改变 LED 显示的状态。这会使得 LDE 显示和目前虚拟主控台的状态不符合。我们可以在稍后用 -L 且不含其它选项的 setleds 命令回复正常状态。
  -num +num
  将数字键打开或关闭。
  -caps +caps
  把大小写键打开或关闭。
  -scroll +scroll
  把选项键打开或关闭。
  范例:
  将数字键打开,其馀二个灯关闭。
   # setleds +num -caps -scroll