1、下載源碼安裝包html
# cd /usr/local/src # wget 'http://mirror.bit.edu.cn/apache//httpd/httpd-2.4.25.tar.gz'
2、解壓安裝linux
# tar zxf httpd-2.4.25.tar.gz # cd httpd-2.4.25 # ./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --with-mpm=worker
在這過程當中報錯以下:apache
checking for chosen layout... Apache checking for working mkdir -p... yes checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu configure: configure: Configuring Apache Portable Runtime library... configure: checking for APR... no configure: error: APR not found. Please read the documentation.
解決APR not found 過程以下:ui
# cd /usr/local/src # wget http://archive.apache.org/dist/apr/apr-1.5.2.tar.gz # tar zxf apr-1.5.2.tar.gz # ./configure --prefix=/usr/local/apr # make && make install
在編譯apr的的過程當中報錯以下:unix
configure: creating ./config.status config.status: creating Makefile config.status: creating include/apr.h config.status: creating build/apr_rules.mk config.status: creating build/pkg/pkginfo config.status: creating apr-1-config config.status: creating apr.pc config.status: creating test/Makefile config.status: creating test/internal/Makefile config.status: creating include/arch/unix/apr_private.h config.status: executing libtool commands rm: cannot remove `libtoolT': No such file or directory config.status: executing default commands
解決方法以下:htm
在configure裏面 RM='$RM -f' 這裏的$RM後面必定有一個空格。 若是後面沒有空格,直接鏈接減號,就依然會報錯。把RM='$RM'改成RM='$RM -f'進程
接着從新編譯Apache:rem
./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --with-mpm=worker --with-apr=/usr/local/apr
報錯以下:get
checking for chosen layout... Apache checking for working mkdir -p... yes checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking target system type... x86_64-unknown-linux-gnu configure: configure: Configuring Apache Portable Runtime library... configure: checking for APR... yes setting CC to "gcc" setting CPP to "gcc -E" setting CFLAGS to " -g -O2 -pthread" setting CPPFLAGS to " -DLINUX -D_REENTRANT -D_GNU_SOURCE" setting LDFLAGS to " " configure: configure: Configuring Apache Portable Runtime Utility library... configure: checking for APR-util... no configure: error: APR-util not found. Please read the documentation.
解決APR-util not found過程:源碼
# wget 'http://archive.apache.org/dist/apr/apr-util-1.5.2.tar.gz' # tar zxf apr-util-1.5.2.tar.gz # cd apr-util-1.5.2 # ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr/bin/apr-1-config # make && make install
編譯完成後,咱們再次從新編譯Apache:
# ./configure --prefix=/usr/local/apache --enable-so --enable-rewrite --with-mpm=worker --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util
enable-so 容許apache支持動態模塊 enable-rewrite 支持URL重定向 with-mpm=worker apache進程模型爲worker 默認爲prefork
最後:
# make && make install