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

2009-05-13 01:07:53来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折


一本文目的
本文旨在详述如何编译Apache,OpenSSL,ModSSL,MM,Mod_Perl,PHP,Zend,MySQL和Oracle支持及其可能遇到的问题,和一些常用的加速编译和提高工作效率的技巧。

二工作环境
RedhatLinuxOS6.x/7.x

三编译过程
1.所需的软件

MM1.1.3http://www.engelschall.com/sw/mm/
OpenSSL0.9.6dwww.openssl.org
ModSSL2.8.10_1.3.26www.modssl.org
Apache1.3.26www.apache.org
MySQL3.23.51www.mysql.com
PHP4.2.1/3.0.18www.php.net
ZendOptimizer1.3.1https://www.zend.com/store/freeware.php
Mod_Perl1.27http://perl.apache.org/dist/
Oracle8.1.7www.oracle.com

2.开始编译

a.首先编译MM(可选)

cd../mm-1.1.3
./configure--prefix=/usr/local/mm(单独的目录便于区别)
make
maketest
makeinstall

b.编译OpenSSL(http:可选https:必需)

cd../openssl-0.9.6d
./configno-threads-fPIC
make
maketest
makeinstall

注:no-threads没有多线程支持,因为Apache1.3.x不用多线程。

c.编译Mod_SSL(http:可选https:必需)

cdmod_ssl-2.8.10-1.3.26
./configure--with-apache=../apache_1.3.26

d.编译Apache

d1最大子进程限制修补(可选)

cd../apache_1.3.26
visrc/include/httpd.h
changevalue256to1024orabove

d2为后来的PHP带Oracle支持作准备(可选)

如果你要编译PHP带Oracle支持,你要修改Apache编译文件configure加下面的行LIBS=-lpthread在
forvarinCFLAGSLDFLAGSLIBSINCLUDESDEPS;do
前面,如下所示

LIBS=-lpthread
forvarinCFLAGSLDFLAGSLIBSINCLUDESDEPS;do

注:忘记了加LIBS=-lpthread,你可以
#cd/usr/src/apache_1.3.26
#makeclean
#LIBS=-lpthread./config.status
#make
#makeinstall

d3编译Apache

EAPI_MM=../mm-1.1.3SSL_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
makecertificate(TYPE=testbydefault)
makeinstall
strip/usr/local/apache_ssl/bin/*

注:
d3.1如果你只是为了测试SSL,可用上面的命令,因为默认是为了测试。
d3.2如果你升级正在运行的SSL站点,可用makecertificateTYPE=dummy,最后拷贝已经在用的ssl.crt/server.crt和
ssl.key/server.key。
d3.3在makeinstall之前,可用命令lddsrc/httpd看有没有输出libpthread以确认前面有没有enableLIBS=-lpthread。
d3.4strip所有的apache可执行文件包括httpd以节省内存空间。

e编译MySQL

shell>groupaddmysql
shell>useradd-gmysqlmysql
shell>cd/usr/local
shell>gunzip</path/to/mysql-VERSION-OS.tar.gz|tarxvf-
shell>ln-sfull-path-to-mysql-VERSION-OSmysql
shell>cdmysql
shell>scripts/mysql_install_db
shell>chown-Rroot.
shell>chown-Rmysqldata
shell>chgrp-Rmysql.
shell>bin/safe_mysqld--user=mysql&

shutdownMySQL:cd/usr/local/mysql;bin/mysqladminshutdown

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:设置一个企业级的LinuxPOP3服务器

下一篇:给Qmail邮件服务器加个病毒防火墙