Apache安装、配置、优化
安装Apache 2.0.48(参见安装手册)
考虑到未来需要rewite_url来让google更容易收录网站,所以特别添加了mod_rewrite。
同时为了限制流量,特别添加了mod_limitpcnn.c补丁,所以多了一个- enable-forward选项。
安装后建议不要删除安装目录,以便在以后的升级中使用。
升级前记得关闭apache2.0。
编译过程:
代码:
在这个例子中,编译了mod_so、mod_speling和openssl支持。
还有其他几种写法。
代码:
或者
代码:
-enable-module [=shared]编译和包含的模块。MODULE是从文档中删除了“_module”的模块的名称。
要将模块编译成DSO,需要添加-shared选项,即-enable-MODS-shared。(参见模块手册)
注意:‘如果你想让内核加载DSO而不实际编译任何动态模块,你必须指定- enable-modules=so=so或者-enable-so’(参见DSO手册)。
所以之前的订单不能换。查看所有apache配置参数。
安装完成后,您可以使用下面的命令来查看启动了哪些模块。
代码:
接下来,将启动程序放入启动程序。如果要启动ssl加密的网页,必须手动启动apache2.0(参见ssl一节)。
代码:
参考:
代码:
在概要文件中添加上述语句来设置路径,使得在bash下控制apachectl更加容易,省去了输入路径的麻烦。
代码:
配置apache2.0
代码:
请查看文件httpd.conf获取配置文件(将文档目录设置为/home/dalouis/public_html)。
代码:
Set the readability of the directory to drwxr-xr-x(755), otherwise' You are prohibited from accessing this server.'
关于安全性的一些配置:
考虑到cgi-bin的安全问题,我们暂时移除cgi-bin。将#添加到httpd.conf中所有关于cgi-bin的行中
西洋构型
我用的:mod_limitipconn,mod_expires,mod_gzip,mod_php4,mod_so,mod_access,mod_alias,mod_userdir,mod_dir,mod_autoindex,mod_status,mod_mime,mod_log_config,http_core
关于加班的问题
我写所有产品查看页面的时候,apache经常因为超时或者流量过大而停止工作。原因有二,一是代码不科学,二是apache的设置问题。
以下是对设置的一些更改:
代码:
?记录访问者的HTTP-REFERER和代理有助于统计访问者通过什么搜索引擎找到我们的网站。或者在原始的CustomLog行中,将参数从common更改为combined。
代码:
使用mod_limitipconn.c来限制apache的并发性。
包:http://dominia.org/djao/limit/这里的安装建议使用动态DSO,给apache2.0打补丁,这样apache2.0就可以知道代理背后的IP。