zl程序教程

您现在的位置是:首页 >  工具

当前栏目

apache配置补充

Apache配置 补充
2023-09-14 09:08:51 时间

apache的安装:

分成三种方式:

  1. tar包
  2. rpm安装
  3. yum安装.

============ tar包安装 ========================

下载.tar.gz的安装包
解压和安装的路径你可以随便指定, 他们可以是不同的

/* 下面的配置 安装程序会 自动的 在local下再创建一个 apache目录 */
./configure --prefix=/usr/local/ --enable-module=so
(新版本的配置是: --enable-so)
(默认的是安装在/usr/local/apache2/ 目录下的, 但是也看到有安装在/opt/apache2/目录下的...)

/* 安装三步骤 */
configure make make install

/* 启动apache的命令,不再是httpd服务, 而是 apachectl start*/
/usr/local/apache/bin/apachectl start.

验证:
http://localhost/...

编译选项:
静态编译: 格式是: --enable-ModuleName, 如: --enable-rewrite
动态编译: 格式是: --enable-ModuleName=shared, 如: --enable-rewrite=shared

=================================================
apache "httpd服务器"的下载:
apache的组织是: www.apache.org
发行本: dist
有很多项目/软件, 其中httpd 只是其中的一个项目
完整的下载地址 是: http://www.apache.org/dist/httpd/httpd-2.4.20.tar.gz

这里只提供了两种 linux下的版本: httpd-2.2.31.tar.gz, 和 2.4.20

=================================================
传说, 安装2.2.31不会遇到很多附加的软件(组件)的 依赖性问题.

安装apache httpd服务器, 真的需要那么多--enable... --with...选项吗?
答案:

  1. 有的人/有的视频, 是那么说了, 说要安装那么多选项;
  2. 但是我看他们即使说了那些选项, 跟 "完全的/完整的" 比较起来还是只是 "小巫见大巫", 要真的指定完也几乎是不可能的
  3. 有的人就只是指定了 --prefix, 和 --enable-so(或者: --enable-module=so)

上面的这些方法, 好像都能用, 所以, 我觉得, 如果你心情好/强迫症, 你爱写多少就写多少, 如: --enable-so --enable-deflate=shared --enable-expires=shared --enable-rewrite=shared --enable-cache.............. 如果你不爽, 也可以就只写一个 --enable-so就好了.

::: 传说中的选项: [ http://zhidao.so.com/q/1348722048128446]
/configure //配置源代码树
–prefix=/usr/local/apache2 //体系无关文件的顶级安装目录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-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方式运行
–enable-authn-dbm=shared // 对动态数据库进行操作。Rewrite时需要。

================== rpm安装 =====================================
使用RPM包安装

  # rpm —ivh apache-*.rpm

完成安装后,配置文件在/etc/httpd/conf/目录下,
文件根目录为/var/www/html,
工具文件在/etc/rc.d/init.d/目录下,
日志文件在/var/log/httpd/目录下。

(~~ 好像相关文件都有 3 级目录 这样就好记了~~)

===========================================
httpd的根: 有两个根

服务器的根root: 是: ServerRoot /etc/httpd/, 这个目录是所有配置文件的目录
文档的根root: 是: DocumentRoot /var/www/html/

==========================================
分析httpd服务器的日志: http://blog.csdn.net/cookies_6362/article/details/2881206

分错误日志和访问日志.
有文本格式的, 日志文件
也有图形界面的...webalizer等等.

======================================================
apache服务器, 严格来说, 叫apache httpd服务器的虚拟主机
同一台服务器上提供多个网站的支持:

分: 基于域名的虚拟主机, 这时, 他们都是用那个同一个ip地址,
基于不同ip地址的虚拟主机

:: 基于域名的虚拟主机:
ServerAdmin yourname@domain
ServerName www.yourdomain.name
DocumentRoot /var/www/html/virtualhost/

ServerAdmin yourname@domain2
ServerName www.yourdomain2.name
DocumentRoot /var/www/html/virtualhost2/