Apache是世界使用排名第一的Web服务器软件。它可以运行在几乎所有广泛使用的计算机平台上,由于其跨平台和安全性被广泛使用,是最流行的Web服务器端软件之一。
源码包:apr-1.7.0.tar.bz2 apr-util-1.6.1.tar.gz expat-2.2.9.tar.gz httpd-2.4.43.tar.bz2
将apr包和apr-util 软件包解压到httpd-2.4.4.43/srclib 下
[root@ shanan abc]# ls apr-1.7.0.tar.bz2 expat-2.2.9 httpd-2.4.43 apr-util-1.6.1.tar.gz expat-2.2.9.tar.gz httpd-2.4.43.tar.bz2 tar bxvf apr-util-1.6.1.tar.gz -C /opt/abc/httpd-2.4.43/srclib/ tar jxvf apr-1.7.0.tar.bz2 -C /opt/abc/httpd-2.4.43/srclib/ [root@ shanan abc]# cd httpd-2.4.43 [root@ shanan httpd-2.4.43]# cd srclib/ [root@ shanan srclib]# ls apr-1.7.0 apr-util-1.6.1 Makefile.in 将文件重命名 [root@ shanan srclib]# mv apr-1.7.0 apr [root@ shanan srclib]# mv apr-util-1.6.1 apr-util [root@ shanan srclib]# ls apr apr-util Makefile.in [root@ shanan srclib]# cd ..回车
...................... //省略若干 Server Version: 2.4.43 Install prefix: /usr/local/apache C compiler: gcc -std=gnu99 CFLAGS: -g -O2 -pthread CPPFLAGS: -DLINUX -D_REENTRANT -D_GNU_SOURCE LDFLAGS: LIBS: C preprocessor: gcc -E然后 Make
然后 Make install
Installing build system files Installing man pages and online manual mkdir /usr/local/apache/man mkdir /usr/local/apache/man/man1 mkdir /usr/local/apache/man/man8 mkdir /usr/local/apache/manual make[1]: 离开目录“/opt/abc/httpd-2.4.43” [root@ shanan httpd-2.4.43]# 源码编译安装完成./configure //配置源代码树 –prefix=/usr/local/apache //体系无关文件的顶级安装目录PREFIX ,也就Apache的安装目录。 –enable-module=so //打开 so 模块,so 模块是用来提 DSO 支持的 apache 核心模块 –enable-deflate=shared //支持网页压缩 –enable-expires=shared //支持 HTTP 控制 –enable-rewrite=shared //支持 URL 重写 –enable-cache //支持缓存 –enable-file-cache //支持文件缓存 –enable-mem-cache //支持记忆缓存 –enable-disk-cache //支持磁盘缓存 –enable-static-support //支持静态连接(默认为动态连接) –enable-static-Linux/1727.html’ target=’_blank’>htpasswd //使用静态连接编译 htpasswd – 管理用于基本认证的用户文件 –enable-static-htdigest //使用静态连接编译 htdigest – 管理用于摘要认证的用户文件 –enable-static-rotatelogs //使用静态连接编译 rotatelogs – 滚动 Apache 日志的管道日志程序 –enable-static-logresolve //使用静态连接编译 logresolve – 解析 Apache 日志中的IP地址为主机名 –enable-static-htdbm //使用静态连接编译 htdbm – 操作 DBM 密码数据库 –enable-static-ab //使用静态连接编译 ab – Apache HTTP 服务器性能测试工具 ./configure --prefix=/usr/local/apache //指定安装路径 –enable-headers // 文件头信息改写,压缩功能需要 –enable-modules=most //开启共享模块 –enable-so //开启核心功能模块 –with-mpm=worker //开启工作模式 –enable-deflate //压缩功能,网页可以达到40%的压缩,节省带宽成本,但会对cpu压力有一点提高 –enable-rewrite //开启重写功能,防盗链所使用 –enable-proxy //(代理功能有必要,因为可以处理跨域问题以及可以分离一些其它的请求处理) –enable-static-checkgid //使用静态连接编译 checkgid –disable-cgid //禁止用一个外部 CGI 守护进程执行CGI脚本 –disable-cgi //禁止编译 CGI 版本的 PHP –disable-userdir //禁止用户从自己的主目录中提供页面 –with-mpm=worker //让apache以worker方式运行 –enable-authn-dbm=shared //对动态数据库进行操作。Rewrite时需要。 –enable-deflate //压缩功能,网页可以达到40%的压缩,节省带宽成本,但会对cpu压力有一点提高 –enable-rewrite //开启重写功能,防盗链所使用 –enable-proxy //(代理功能有必要,因为可以处理跨域问题以及可以分离一些其它的请求处理) –with-zlib 支持zlib压缩 –with-pcre 支持正则表达式 –with-apr=/usr/local/apr 指明依赖的apr所在目录 –with-apr-util=/usr/local/apr-util/ 指明依赖的apr-util所在的目录 –enable-mpms-shared=all 以共享方式编译的模块 –with-mpm=prefork 指明httpd的工作方式为prefork –with-expat=/usr/local/expat 指明依赖的expat所在的目录
可选特性: –enable-experimental-libtool //启用试验性质的自定义libtool –disable-libtool-lock //取消锁定(可能导致并行编译崩溃) –enable-debug //启用调试编译,仅供开发人员使用。 –enable-maintainer-mode //打开调试和编译时警告,仅供开发人员使用。 –enable-profile //打开编译profiling(GCC) –enable-pool-debug[=yes|no|verbose|verbose-alloc|lifetime|owner|all] //打开pools调试 –enable-malloc-debug //打开BeOS平台上的malloc_debug –disable-lfs //在32-bit平台上禁用大文件支持(large file support) –enable-nonportable-atomics //若只打算在486以上的CPU上运行Apache ,那么使用该选项可以启用更加高效的基于互斥执行的原子操作。 –enable-threads //启用线程支持,在线程型的MPM上必须打开它 –disable-threads //禁用线程支持,如果不使用线程化的MPM ,可以关闭它以减少系统开销。 –disable-dso //禁用DSO支持 –enable-other-child //启用可靠子进程支持 –disable-ipv6 //禁用IPv6支持
可选的额外程序包: –with-gnu-ld //指定C编译器使用 GNU ld –with-pic //只使用 PIC/non-PIC 对象[默认为两者都使用] –with-tags[=TAGS] //包含额外的配置 –with-installbuilddir=DIR //指定APR编译文件的存放位置(默认值为:’${datadir}/build’) –without-libtool //禁止使用libtool连接库文件 –with-efence[=DIR] //指定Electric Fence的安装目录 –with-sendfile //强制使用sendfile(译者注:Linux2.4/2.6内核都支持) –with-egd[=DIR] //使用EDG兼容的socket –with-devrandom[=DEV] //指定随机设备[默认为:/dev/random]
可选的额外程序包: –with-apr=PATH //指定APR的安装目录(–prefix选项值或apr-config的路径) –with-ldap-include=PATH //ldap包含文件目录(带结尾斜线) –with-ldap-lib=PATH //ldap库文件路径 –with-ldap=library //使用的ldap库 –with-dbm=DBM //选择使用的DBM类型DBM={sdbm,gdbm,ndbm,db,db1,db185,db2,db3,db4,db41,db42,db43,db44} –with-gdbm=PATH //指定GDBM的位置 –with-ndbm=PATH //指定NDBM的位置 –with-berkeley-db=PATH //指定Berkeley DB的位置 –with-pgsql=PATH //指定PostgreSQL的位置 –with-mysql=PATH //参看INSTALL.MySQL文件的内容 –with-sqlite3=PATH //指定sqlite3的位置 –with-sqlite2=PATH //指定sqlite2的位置 –with-expat=PATH //指定Expat的位置或’builtin’ –with-iconv=PATH //iconv的安装目录
netstat 命令用于显示各种网络相关信息,如网络连接,路由表,接口状态 (Interface Statistics),masquerade 连接,多播成员 (Multicast Memberships) 等等。
从整体上看,netstat的输出结果可以分为两个部分:一个是Active Internet connections,称为有源TCP连接,其中”Recv-Q”和”Send-Q”指 的是接收队列和发送队列。这些数字一般都应该是0。如果不是则表示软件包正在队列中堆积。这种情况只能在非常少的情况见到;另一个是Active UNIX domain sockets,称为有源Unix域套接口(和网络套接字一样,但是只能用于本机通信,性能可以提高一倍)。
语法格式:netstat [参数]
常用参数: