开启 Apache Server Status
[ 2009/08/17 18:19 | by selboo ]
Apache 1.3.2及以后的版本中就自带一个查看Apache状态的功能模块server-status
一般默认状态下,apache安装的时候已经将mod_status模块安装了,只是模式情况下没有启用
在httpd.conf中,找到
引用
将其中的 .example.com 改为自己的域名,比如www.admin99.net
将前面的注释去掉,重启apache,即可通过 http://www.admin99.net/server-status来访问。
可以通过http://www.admin99.net/server-status?refresh=5来自动刷新当前的状态信息,5秒刷新一次
另外,如果想要看当前的详细请求信息的话,可以将
引用
ExtendedStatus On
一般默认状态下,apache安装的时候已经将mod_status模块安装了,只是模式情况下没有启用
在httpd.conf中,找到
引用
<Location /server-status>
SetHandler server-status
Order deny,allow
Deny from all
Allow from .example.com
</Location>
SetHandler server-status
Order deny,allow
Deny from all
Allow from .example.com
</Location>
将其中的 .example.com 改为自己的域名,比如www.admin99.net
将前面的注释去掉,重启apache,即可通过 http://www.admin99.net/server-status来访问。
可以通过http://www.admin99.net/server-status?refresh=5来自动刷新当前的状态信息,5秒刷新一次
另外,如果想要看当前的详细请求信息的话,可以将
引用
ExtendedStatus On
Apache编译mod_python3.3.1错误解决
[ 2009/06/18 02:52 | by selboo ]
apache2.2.11编译mod_python报错
编译安装mod_python3.3.1
./configure –with-apxs=/usr/local/apache/bin/apxs –with-python=/usr/bin/python2.4
make
make install
如果提示如下错误:
…..
make: *** [do_dso] Error 2
需要修改 mod_python-3.3.1/src/connobject.c
原:
!(b == APR_BRIGADE_SENTINEL(b)
改为:
!(b == APR_BRIGADE_SENTINEL(bb)
编译安装mod_python3.3.1
./configure –with-apxs=/usr/local/apache/bin/apxs –with-python=/usr/bin/python2.4
make
make install
如果提示如下错误:
…..
make: *** [do_dso] Error 2
需要修改 mod_python-3.3.1/src/connobject.c
原:
!(b == APR_BRIGADE_SENTINEL(b)
改为:
!(b == APR_BRIGADE_SENTINEL(bb)
启用rewrite模块,支持.htaccess
[ 2009/05/14 20:04 | by selboo ]
有时候该模块被编译成 httpd 二进制流,如果是这样的话,你可以通过下列命令查看该模块是否被载入了
httpd -l
如果列表中没有,它有可能是被动态载入的。在这种情况下你可以通过下列代码的输出来查看
如果你是自己编译安装4的Apache, 你只需简单的把下列这行添加到你的配置文件(注:这样就可以在Apache启动时自动载入该模块)
./configure –enable-module=rewrite
如果你使用的是Apache的分支版本,如,Fedora Core(红帽子Linux服务器版),你必须安装相关的devel工具
yum install apache2-devel
这样 mod_rewrite 模块就可以用了。
现在 mod_rewrite 是载入了,但它还不能工作
这是很典型的,意思就是说默认的Apache配置不允许使用客户端 .htaccess 文件。 你需要更改
AllowOverride None
为
AllowOverride All
你只需打开编辑 httpd.conf file 然后搜索 AllowOverride来修改。 这是第一个影响根目录属性的配置,但它不是你想要的。
这是第二个作用Web根目录的属性配置, 你可以修改这个属性,但是你可能不想让你的所有网站都允许mod_rewrite模块操作(如写操作)。 当然了你可以为你的某个特定站点另外创建一个目录节点,
httpd -l
如果列表中没有,它有可能是被动态载入的。在这种情况下你可以通过下列代码的输出来查看
如果你是自己编译安装4的Apache, 你只需简单的把下列这行添加到你的配置文件(注:这样就可以在Apache启动时自动载入该模块)
./configure –enable-module=rewrite
如果你使用的是Apache的分支版本,如,Fedora Core(红帽子Linux服务器版),你必须安装相关的devel工具
yum install apache2-devel
这样 mod_rewrite 模块就可以用了。
现在 mod_rewrite 是载入了,但它还不能工作
这是很典型的,意思就是说默认的Apache配置不允许使用客户端 .htaccess 文件。 你需要更改
AllowOverride None
为
AllowOverride All
你只需打开编辑 httpd.conf file 然后搜索 AllowOverride来修改。 这是第一个影响根目录属性的配置,但它不是你想要的。
这是第二个作用Web根目录的属性配置, 你可以修改这个属性,但是你可能不想让你的所有网站都允许mod_rewrite模块操作(如写操作)。 当然了你可以为你的某个特定站点另外创建一个目录节点,
<Directory /path/to/your/site>
Options FollowSymLinks AllowOverride All
</Directory>
Options FollowSymLinks AllowOverride All
</Directory>
Apache2.2开启Gzip和Expires来提升网页浏览速度
[ 2009/04/08 23:33 | by selboo ]
在Apache的配置文件中找到下面两行,将注释#去掉,重启。
LoadModule deflate_module modules/mod_deflate.so
LoadModule expires_module modules/mod_expires.so
在你网站的目录下新建.htaccess,添加如下内容:
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css image/gif image/jpeg image/png application/x-javascript
解释一下。ExpiresByType是通过MIME类型来设置具体文件的缓存时间,A表示访问,A后面的数字表示访问后的缓存时间。AddOutputFilterByType表示根据后面的MIME类型来压缩文件,这里对css,html,gif,jpeg,png,JavaScript等进行gzip压缩。更多选项请参考apache手册哦。
关闭ETag。Etag的问题在于,它是根据可以辨别网站所在的服务器的具有唯一性的属性来生成的。当浏览器从一台服务器上获得页面内容后到另外一台服务器上进行验证时ETag就会不匹配,这种情况对于使用服务器组和处理请求的网站来说是非常常见的。在配置文件中写入下面一行即可:
FileETag none
如果是多服务器负载均衡,可以设置为FileETag MTime Size,
apache默认设置为FileETag INode MTime Size,去掉INode。
LoadModule deflate_module modules/mod_deflate.so
LoadModule expires_module modules/mod_expires.so
在你网站的目录下新建.htaccess,添加如下内容:
ExpiresActive On
ExpiresByType image/gif A2592000
ExpiresByType image/jpeg A2592000
ExpiresByType image/png A2592000
ExpiresByType image/x-icon A2592000
ExpiresByType application/x-javascript A604800
ExpiresByType text/css A604800
SetOutputFilter DEFLATE
AddOutputFilterByType DEFLATE text/html text/css image/gif image/jpeg image/png application/x-javascript
解释一下。ExpiresByType是通过MIME类型来设置具体文件的缓存时间,A表示访问,A后面的数字表示访问后的缓存时间。AddOutputFilterByType表示根据后面的MIME类型来压缩文件,这里对css,html,gif,jpeg,png,JavaScript等进行gzip压缩。更多选项请参考apache手册哦。
关闭ETag。Etag的问题在于,它是根据可以辨别网站所在的服务器的具有唯一性的属性来生成的。当浏览器从一台服务器上获得页面内容后到另外一台服务器上进行验证时ETag就会不匹配,这种情况对于使用服务器组和处理请求的网站来说是非常常见的。在配置文件中写入下面一行即可:
FileETag none
如果是多服务器负载均衡,可以设置为FileETag MTime Size,
apache默认设置为FileETag INode MTime Size,去掉INode。
Apache 优化加速
[ 2009/04/08 23:22 | by selboo ]
站点描述:
全静态页面,站点数据大小250M左右。
内存:4G
内存使用率才:10%都不到
解决方案;
本机加个SQUID做加速。个人感觉意义不大。
然后,看了下apache cookbook有个叫mem_cahce的模块。想尝试下呵呵。
使用mem_cache模块,编译apache时候必须添加
"--enable-cache"
"--enable-mem-cache"
或者使用apxs -ica 添加模块
mod_mem_cache需要mod_cache模块的支持。
mem_cache 简单应用:
CODE:
CacheEnable mem /
MCacheSize 262144
MCacheMaxObjectCount 10000
MCacheMinObjectSize 1
MCacheMaxObjectSize 1000000
MCacheRemovalAlgorithm LRU
CacheEnable mem / #需要存储的目录。
MCacheSize 262144 #cache使用内存的最大数量(kbyte)
MCacheMaxObjectCount 10000 #允许在cache中存储的最大数量
MCacheMinObjectSize 1 #最小允许在cache中存储文件的字节数(byte)
MCacheMaxObjectSize 1000000 #最大允许在cache中存储文件的字节书(byte)
MCacheRemovalAlgorithm LRU #文件在cache中使用的算法(默认GDSF)
详细配置请参考:
http://httpd.apache.org/docs/2.2/mod/mod_cache.html
http://httpd.apache.org/docs/2.2/mod/mod_mem_cache.html
http://httpd.apache.org/docs/2.2/caching.html#inmemory
全静态页面,站点数据大小250M左右。
内存:4G
内存使用率才:10%都不到
解决方案;
本机加个SQUID做加速。个人感觉意义不大。
然后,看了下apache cookbook有个叫mem_cahce的模块。想尝试下呵呵。
使用mem_cache模块,编译apache时候必须添加
"--enable-cache"
"--enable-mem-cache"
或者使用apxs -ica 添加模块
mod_mem_cache需要mod_cache模块的支持。
mem_cache 简单应用:
CODE:
CacheEnable mem /
MCacheSize 262144
MCacheMaxObjectCount 10000
MCacheMinObjectSize 1
MCacheMaxObjectSize 1000000
MCacheRemovalAlgorithm LRU
CacheEnable mem / #需要存储的目录。
MCacheSize 262144 #cache使用内存的最大数量(kbyte)
MCacheMaxObjectCount 10000 #允许在cache中存储的最大数量
MCacheMinObjectSize 1 #最小允许在cache中存储文件的字节数(byte)
MCacheMaxObjectSize 1000000 #最大允许在cache中存储文件的字节书(byte)
MCacheRemovalAlgorithm LRU #文件在cache中使用的算法(默认GDSF)
详细配置请参考:
http://httpd.apache.org/docs/2.2/mod/mod_cache.html
http://httpd.apache.org/docs/2.2/mod/mod_mem_cache.html
http://httpd.apache.org/docs/2.2/caching.html#inmemory