您的位置:首页 >> 操作系统 >> Linux >> Linux服务器 >> 正文
RSS
 

WEB服务器Apache编译指南及高级技巧

http://www.rdxx.com 03年09月02日 08:35 互连网 我要投稿


  一 本文目的
  本文旨在详述如何编译Apache,OpenSSL,ModSSL,MM,Mod_Perl,PHP,Zend,MySQLOracle支持及其可能遇到的问题,和一些常用的加速编译和提高工作效率的技巧。
  
  二 工作环境
  Redhat Linux OS 6.x/7.x
  
  三 编译过程
  1. 所需的软件
  
  MM 1.1.3 http://www.engelschall.com/sw/mm/
  OpenSSL 0.9.6d www.openssl.org
  ModSSL 2.8.10_1.3.26 www.modssl.org
  Apache 1.3.26 www.apache.org
  MySQL 3.23.51 www.mysql.com
  PHP 4.2.1/3.0.18 www.php.net
  Zend Optimizer 1.3.1 https://www.zend.com/store/freeware.php
  Mod_Perl 1.27 http://perl.apache.org/dist/
  Oracle 8.1.7 www.oracle.com
  
  2. 开始编译
  
  a. 首先编译MM (可选)
  
  cd ../mm-1.1.3
  ./configure --prefix=/usr/local/mm (单独的目录便于区别)
  make
  make test
  make install
  
  b. 编译OpenSSL (http: 可选 https:必需)
  
  cd ../openssl-0.9.6d
  ./config no-threads -fPIC
  make
  make test
  make install
  
  注:no-threads 没有多线程支持,因为Apache 1.3.x不用多线程。
  
  c. 编译Mod_SSL (http: 可选 https:必需)
  
  cd mod_ssl-2.8.10-1.3.26
  ./configure --with-apache=../apache_1.3.26
  
  d. 编译Apache
  
  d1 最大子进程限制修补 (可选)
  
  cd ../apache_1.3.26
  vi src/include/httpd.h
  change value 256 to 1024 or above
  
  d2 为后来的PHP带Oracle支持作准备 (可选)
  
  如果你要编译PHP带Oracle支持,你要修改Apache编译文件configure加下面的行 LIBS=-lpthread在
  for var in CFLAGS LDFLAGS LIBS INCLUDES DEPS; do
  前面,如下所示
  
  LIBS=-lpthread
  for var in CFLAGS LDFLAGS LIBS INCLUDES DEPS; do
  
  注:忘记了加LIBS=-lpthread,你可以
  # cd /usr/src/apache_1.3.26
  # make clean
  # LIBS=-lpthread ./config.status
  # make
  # make install
  
  d3 编译Apache
  
  EAPI_MM=../mm-1.1.3 SSL_BASE=../openssl-0.9.6d ./configure
  --prefix=/usr/local/apache_ssl --enable-module=most --enable-shared=max --enable-module=rewrite --enable-shared=rewrite --enable-module=proxy --enable-shared=proxy --enable-module=ssl --enable-shared=ssl
  make
  make certificate (TYPE=test by default)
  make install
  strip /usr/local/apache_ssl/bin/*
  
  注:
  d3.1 如果你只是为了测试SSL,可用上面的命令,因为默认是为了测试。
  d3.2 如果你升级正在运行的SSL站点,可用make certificate TYPE=dummy,最后拷贝已经在用的ssl.crt/server.crt 和
  ssl.key/server.key。
  d3.3 在make install之前,可用命令ldd src/httpd 看有没有输出libpthread以确认前面有没有enable LIBS=-lpthread。
  d3.4 strip 所有的apache可执行文件包括httpd以节省内存空间。
  
  e 编译MySQL
  
  shell> groupadd mysql
  shell> useradd -g mysql mysql
  shell> cd /usr/local
  shell> gunzip < /path/to/mysql-VERSION-OS.tar.gz | tar xvf -
  shell> ln -s full-path-to-mysql-VERSION-OS mysql
  shell> cd mysql
  shell> scripts/mysql_install_db
  shell> chown -R root .
  shell> chown -R mysql data
  shell> chgrp -R mysql .
  shell> bin/safe_mysqld --user=mysql &
  
  shutdown MySQL: cd /usr/local/mysql;bin/mysqladmin shutdown
9 7 3 1 2 3 4 5 4 8 :

 
 
标签: 指南 , 高级技巧 , 编译 , Web服务器 , Apache , 技巧 , 服务 , Web 打印本文
 
 
  热点搜索
 
 
 



Valid XHTML 1.0 Transitional
Copyright ©2005 - 2008 Rdxx.Com,All Rights Reserved
收藏本页
收藏本站