1. 程式人生 > >Apache-2.4.32安裝

Apache-2.4.32安裝

WEB服務之Apache 安裝Apach

WEB服務之Apache
安裝Apache步驟
第一步解包:
[root@ns1 ~]# tar -xf httpd-2.4.32.tar.gz -C /usr/local/
第二步切換進去:
[root@ns1 ~]# cd /usr/local/httpd-2.4.32/
第三步配置、編譯、編譯安裝:
[root@ns1 httpd-2.4.32]# ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-zlib --enable-modules=most --enable-mpms-shared=most --with-mpm=event
直接編譯會報錯:
checking for APR... no
configure: error: APR not found. Please read the documentation.
用yum 安裝apr也沒有用,可能是版本問題,下面用編譯安裝的解決方案:
Apr軟件包下載地址
http://mirror.bit.edu.cn/apache/apr/apr-1.6.3.tar.gz
解壓縮包:
安裝apr-1.6.3
[root@ns1 ~]# tar xf apr-1.6.3.tar.gz -C /usr/local/src/
配置編譯:
[root@ns1 ~]# cd /usr/local/src/
[root@ns1 src]# cd apr-1.6.3/
[root@ns1 apr-1.6.3]# ./configure --prefix=/usr/local/apr
[root@ns1 apr-1.6.3]# make && make install
安裝apr-util-1.6.1
[root@ns1 ~]# tar -xf apr-util-1.6.1.tar.gz -C /usr/local/src/
[root@ns1 ~]# cd /usr/local/src/
[root@ns1 src]# cd apr-util-1.6.1/
[root@ns1 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@ns1 apr-util-1.6.1]# make && make install
編譯時報錯:
xml/apr_xml.c:35:19: 錯誤:expat.h:沒有那個文件或目錄
xml/apr_xml.c:66: 錯誤:expected specifier-qualifier-list before ‘XML_Parser’
xml/apr_xml.c: 在函數‘cleanup_parser’中:
xml/apr_xml.c:364: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:365: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c: 在文件層:
xml/apr_xml.c:384: 錯誤:expected ‘;’, ‘,’ or ‘)’ before ‘*’ token
xml/apr_xml.c: 在函數‘apr_xml_parser_create’中:
xml/apr_xml.c:401: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:402: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:410: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:411: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:412: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:424: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:424: 錯誤:‘default_handler’未聲明(在此函數內第一次使用)
xml/apr_xml.c:424: 錯誤:(即使在一個函數內多次出現,每個未聲明的標識符在其
xml/apr_xml.c:424: 錯誤:所在的函數內也只報告一次。)
xml/apr_xml.c: 在函數‘do_parse’中:
xml/apr_xml.c:434: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:438: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c:442: 錯誤:‘apr_xml_parser’沒有名為‘xp_err’的成員
xml/apr_xml.c:442: 錯誤:‘apr_xml_parser’沒有名為‘xp’的成員
xml/apr_xml.c: 在函數‘apr_xml_parser_geterror’中:
xml/apr_xml.c:500: 錯誤:‘apr_xml_parser’沒有名為‘xp_err’的成員
xml/apr_xml.c:500: 錯誤:‘apr_xml_parser’沒有名為‘xp_err’的成員
make[1]: [xml/apr_xml.lo] 錯誤 1
make[1]: Leaving directory `/usr/local/src/apr-util-1.6.1‘
make:
[all-recursive] 錯誤 1
上述報錯解決方案:
[root@ns1 apr-util-1.6.1]# yum install -y expat-devel
安裝後重新編譯:
[root@ns1 apr-util-1.6.1]# make && make install
上述包都安裝完畢再切入httpd目錄下配置編譯安裝:
[root@ns1 apr-util-1.6.1]# cd /usr/local/httpd-2.4.32/
[root@ns1 httpd-2.4.32]# ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-zlib --enable-modules=most --enable-mpms-shared=most --with-mpm=event --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/ (需要增加指定apr和apr-util的安裝路徑)。
出現下面報錯:
checking which MPM to use by default... event
configure: error: MPM most does not support dynamic loading.
解決方法:
將配置中--enable-mpms-shared=most改成all
修改後配置參數如下:
[root@ns1 httpd-2.4.32]# ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-zlib --enable-modules=most --enable-mpms-shared=all --with-mpm=event --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util/
按上述配置完成後基本沒有錯誤了,後面接著編譯和編譯安裝:
[root@ns1 httpd-2.4.32]# make && make install
編譯如果報下面的錯誤:
make[2]: [htpasswd] 錯誤 1
make[2]: Leaving directory `/usr/local/httpd-2.4.32/support‘
make[1]:
[all-recursive] 錯誤 1
make[1]: Leaving directory `/usr/local/httpd-2.4.32/support‘
make: *** [all-recursive] 錯誤 1
解決方法:
[root@ns1 httpd-2.4.32]# ln -s /usr/lib64/libm.a /usr/lib/libm.a
[root@ns1 httpd-2.4.32]# ln -s /usr/lib64/libm.so /usr/lib/libm.so
[root@ns1 httpd-2.4.32]# ln -s /usr/lib64/libexpat.so /usr/lib/libexpat.so

[root@ns1 httpd-2.4.32]# make && make install
編譯如果還是報下面的錯誤:那就是apr和apr-util的版本有問題,centos6應該安裝1.5版本的,1.6版本或者版本過低都會有問題
make[2]: * [htpasswd] 錯誤 1
make[2]: Leaving directory /usr/local/httpd-2.4.32/support‘<br/>make[1]: * [all-recursive] 錯誤 1<br/>make[1]: Leaving directory/usr/local/httpd-2.4.32/support‘
make: *
[all-recursive] 錯誤 1
重新安裝1.5版本的在重新配置增加一個配置項
[root@ns1 httpd-2.4.32]# ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-zlib --enable-modules=most --enable-mpms-shared=all --with-mpm=event --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-included-apr
如果出現下面報錯:
configure: error: Bundled APR requested but not found at ./srclib/. Download and unpack the corresponding apr and apr-util packages to ./srclib/.
解決方案:
[root@ns1 src]# cp -fr apr-1.5.1 /usr/local/httpd-2.4.33/srclib/apr
[root@ns1 src]# cp -fr apr-util-1.5.1/ /usr/local/httpd-2.4.33/srclib/apr-util
將解壓的軟件包放入/usr/local/httpd-2.4.32/srclib/下(去除版本號)

報錯:configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/
解決方案:yum install -y pcre-devel
解決了問題再重新配置
[root@ns1 httpd-2.4.32]# ./configure --prefix=/usr/local/httpd --sysconfdir=/etc/httpd --enable-so --enable-ssl --enable-cgi --enable-rewrite --enable-zlib --enable-modules=most --enable-mpms-shared=all --with-mpm=event --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-included-apr --enable-deflate --enable-expires
配置完成後編譯、編譯安裝:
[root@ns1 httpd-2.4.32]# make && make install
完成後復制腳本:
[root@ns1 local]# cp /usr/local/httpd/bin/apachectl /etc/init.d/httpd
[root@ns1 local]# /etc/init.d/httpd start
[root@ns1 local]# netstat -anpt|grep httpd
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 55654/httpd
配置虛擬主機:
[root@ns1 local]# vim /etc/httpd/httpd.conf

Virtual hosts

Include /etc/httpd/extra/httpd-vhosts.conf(去掉這行的註釋)
[root@ns1 local]# vim /etc/httpd/extra/httpd-vhosts.conf
<Directory "/var/www">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
Require all granted
</Directory>
<VirtualHost 192.168.0.50:80>
ServerAdmin [email protected]
DocumentRoot "/var/www"
ServerName www.benet.com
ServerAlias benet.com
ErrorLog "logs/www.benet.com-error_log"
CustomLog "logs/www.benet.com-access_log" common
</VirtualHost>

Apache-2.4.32安裝