Apache HTTP Server(简称Apache)是Apache软件基金会的一个开放源码的网页服务器,可以在大多数计算机操作系统中运行,由于其多平台和安全性被广泛使用,是最流行的Web服务器端软件之一,下面为大家分享一下如何通过源码编译的方式安装apache2.4。
公司主营业务:成都网站建设、网站制作、移动网站开发等业务。帮助企业客户真正实现互联网宣传,提高企业的竞争能力。创新互联公司是一支青春激扬、勤奋敬业、活力青春激扬、勤奋敬业、活力澎湃、和谐高效的团队。公司秉承以“开放、自由、严谨、自律”为核心的企业文化,感谢他们对我们的高要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。创新互联公司推出天桥免费做网站回馈大家。
本文档使用的源码包地址 链接:https://pan.baidu.com/s/110RWf3VC8J3oJhgYq5jU2w 提取码:pdc0
[root@Jaking12 ~]# yum install -y gcc pcre pcre-devel expat-devel bzip2 openssl-devel zlib* libtool
[root@Jaking12 src]# rz
[root@Jaking12 src]# tar xvf apr-1.7.0.tar.gz
[root@Jaking12 src]# ls
apr-1.7.0 apr-1.7.0.tar.gz
[root@Jaking12 src]# cd apr-1.7.0
[root@Jaking12 apr-1.7.0]# ./configure --prefix=/usr/local/apr
[root@Jaking12 apr-1.7.0]# make
[root@Jaking12 apr-1.7.0]# make install
[root@Jaking12 apr-1.7.0]# cd ..
[root@Jaking12 src]# rz
rz waiting to receive.
zmodem trl+C ȡ
100% 541 KB 541 KB/s 00:00:01 0 Errors..
[root@Jaking12 src]# ls
apr-1.7.0 apr-1.7.0.tar.gz apr-util-1.6.1.tar.gz
[root@Jaking12 src]# tar xf apr-util-1.6.1.tar.gz
[root@Jaking12 src]# ls
apr-1.7.0 apr-1.7.0.tar.gz apr-util-1.6.1 apr-util-1.6.1.tar.gz
[root@Jaking12 src]# cd apr-util-1.6.1
[root@Jaking12 apr-util-1.6.1]# ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
[root@Jaking12 apr-util-1.6.1]# make
[root@Jaking12 apr-util-1.6.1]# make install
更多的选项可以通过./configure --help 了解
官方的编译选项文档http://httpd.apache.org/docs/current/programs/configure.html
--prefix=/usr/local/apache
--sysconfdir=/etc/httpd // 指定配置文件在安装在哪个路径。如不指定,配置文件就在程序安装的目录;如指定/etc目录
--with-apr=/usr/local/apr // 指定依赖的apr路径。注意必须指明路径,否则编译时会自动去找/usr下的apr,而不是编译的高版本apr,下同
--with-apr-util=/usr/local/apr-util
--with-mpm=MPM //指定默认的 [prefork | worker | event] 如3种MPM模块都编译了,则通过此项指定默认使用哪种
--with-pcre //依赖pcre库用于解决正则表达式问题。 ## 安装 pcre-devel(兼容Perl的正则表达式库)
--enable-so //打开 so 模块,启用动态装载模块功能
--enable-ssl //启用ssl功能。注意要先安装,https使用
--enable-cgi //启用cgi功能,为非线程方式工作的mpm使用
--enable-cgid //以线程工作(worker/event)的mpm使用
--enable-rewrite //支持 URL 重写
--enable-zlib //通用压缩机制
--enable-module=most //[ all | most | ……] 指定启用哪些模块。可指定具体的模块名,也可使用all表示启用所有模块,most表示启用大多数常用模块。
一般使用most即可
--enable-mpms-shared=all //启用MPM支持的模式,启用哪种mpm(prefork,worker,event),使用worker或event时要另外一种方式编译php(编译时使用了–enable-maintainer-zts选项)
--enable-deflate //传输压缩机制,节约带宽提供对内容的压缩传输编码支持一般是html、js、css等内容的站点。使用此参数会大大
提高传输速度提升访问者访问的体验。在生产环境中这是apache调优的一个重要选项之一
[root@Jaking12 apr-util-1.6.1]# cd ..
[root@Jaking12 src]# rz
rz waiting to receive.
zmodem trl+C ȡ
100% 8983 KB 8983 KB/s 00:00:01 0 Errors
[root@Jaking12 src]# ls
apr-1.7.0 apr-1.7.0.tar.gz apr-util-1.6.1 apr-util-1.6.1.tar.gz httpd-2.4.39.tar.gz
[root@Jaking12 src]# tar xf httpd-2.4.39.tar.gz
[root@Jaking12 src]# ls
apr-1.7.0 apr-util-1.6.1 httpd-2.4.39
apr-1.7.0.tar.gz apr-util-1.6.1.tar.gz httpd-2.4.39.tar.gz
[root@Jaking12 src]# cd httpd-2.4.39
[root@Jaking12 httpd-2.4.39]# ./configure --prefix=/usr/local/apache24 --enable-so --enable-ssl --enable-cgi --enable-rewrite --with-zlib --with-pcre --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-modules=most --enable-mods-shared=most --enable-mpms-shared=all --with-mpm=event
[root@Jaking12 httpd-2.4.39]# make
[root@Jaking12 httpd-2.4.39]# make install
所有组件 /usr/local/apache24
主配置文件 /usr/local/apache24/conf
启动脚本 /usr/local/apache24/bin/apachectl
[root@Jaking12 httpd-2.4.39]# ls /usr/local/apache24/
bin build cgi-bin conf error htdocs icons include logs man manual modules
[root@Jaking12 httpd-2.4.39]# ls /usr/local/apache24/conf/
extra httpd.conf magic mime.types original
[root@Jaking12 httpd-2.4.39]# ls /usr/local/apache24/bin/
ab apxs dbmmanage envvars-std htcacheclean htdigest httpd logresolve
apachectl checkgid envvars fcgistarter htdbm htpasswd httxt2dbm rotatelogs
[root@Jaking12 httpd-2.4.39]# ll /usr/local/apache24/bin/apachectl
-rwxr-xr-x 1 root dip 3440 Mar 10 16:45 /usr/local/apache24/bin/apachectl
启动 apache2.4
[root@Jaking12 httpd-2.4.39]# /usr/local/apache24/bin/apachectl
AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::250:56ff:fe2c:fe97%ens33. Set the 'ServerName' directive globally to suppress this message 这是一个提示,问题不大 (⊙o⊙)…
[root@Jaking12 httpd-2.4.39]# /usr/local/apache24/bin/apachectl graceful
[root@Jaking12 httpd-2.4.39]# netstat -pantul | grep 80
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 807/sshd
tcp6 0 0 :::80 :::* LISTEN 35199/httpd
tcp6 0 0 :::22 :::* LISTEN 807/sshd
[root@Jaking12 httpd-2.4.39]# grep DocumentRoot /usr/local/apache24/conf/httpd.conf
# DocumentRoot: The directory out of which you will serve your
DocumentRoot "/usr/local/apache24/htdocs"
# access content that does not live under the DocumentRoot.
[root@Jaking12 httpd-2.4.39]# ls /usr/local/apache24/htdocs
index.html
[root@Jaking12 httpd-2.4.39]# cat /usr/local/apache24/htdocs/index.html
It works!
源码编译 apache2.4源码编译 apache2.4
[root@Jaking12 httpd-2.4.39]# vim /usr/local/apache24/htdocs/index.html
It works!
Hello World!
源码编译 apache2.4源码编译 apache2.4
[root@Jaking12 httpd-2.4.39]# cd /usr/local/apache24/htdocs/
[root@Jaking12 htdocs]# ls
index.html
[root@Jaking12 htdocs]# touch file{1..10}
[root@Jaking12 htdocs]# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9 index.html
[root@Jaking12 htdocs]# mv index.html index.html.bak
[root@Jaking12 htdocs]# ls
file1 file10 file2 file3 file4 file5 file6 file7 file8 file9 index.html.bak
源码编译 apache2.4源码编译 apache2.4
至此,实战演示源码编译 apache2.4完毕。
新闻标题:如何通过源码编译的方式安装apache2.4
文章转载:http://www.stwzsj.com/qtweb/news15/3765.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联