apache编译安装参数说明

        apache编译安装参数说明

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
./configure #配置源代码树
--prefix=/usr/local/apache2 #体系无关文件的顶级安装目录prefix ,也就apache的安装目录。如果没有指定PREFIX,默认会装到/usr/local/apache2。
--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-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 服务器性能测试工具
--enable-static-checkgid #使用静态连接编译 checkgid
--disable-cgid #禁止用一个外部 cgi 守护进程执行cgi脚本
--disable-cgi #禁止编译 cgi 版本的 PHP
--disable-userdir #禁止用户从自己的主目录中提供页面
--with-mpm=worker # 让apache以worker方式运行

阅读全文 >>

apache 的动态和静态

        关于apache的动态与静态编译的理解,引用某人的比喻如下:

        好比有两个人a和m,a代表apache,m代表module,要想让a使用m的东西,一个方法是把m的东西都放到a那里去,a使用的时候就是现成的了,就是所谓的静态编译

阅读全文 >>

apache的rewrite规则

        rewrite的规则:

1
2
3
4
5
6
7
8
9
10
11
12
13
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^.*Firefox/4.0* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^.*Tomato Bot/1.0* [NC]
RewriteCond %{REQUEST_URI} !^/404*
RewriteRule .* /404.html
</IfModule>
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_USER_AGENT} ^*Firefox/4.0* [NC,OR]
RewriteCond %{HTTP_USER_AGENT} ^*Tomato Bot/1.0* [NC]
RewriteRule .* - [F]
</IfModule>

阅读全文 >>

apache配置防盗链

        如果站点是一个图片站,有很多非常漂亮的美女图片,时间久了会有很多人来网站借图片,有的直接下载走了,还有的直接取走图片的地址,那么他就可以直接把图片地址放到他自己的网站上,他的用户可以直接从他的网站上查看这个图片,而实际上浏览这个图片是从我的网站上访问的。这样,这个图片所产生的宽带开销对我来说没有任何意义,毕竟看图片的人不是我的客户,而是人家的。所以我们要把这些图片限制一下,凡是在第三方站点上,严禁访问我站点的图片。

阅读全文 >>

apache 的默认编码

        在httpd.conf 中有一个参数是控制apache的默认编码的,AddDefaultCharset 它的作用就是当开发者没有指定程序的编码时,apache会按照这里的配置来显示效果。一般这个参数是不需要的,因为很少有程序不指定编码。为了引起不必要的麻烦,建议开启这个编码的童鞋去掉吧。

阅读全文 >>