设为首页 收藏本站
查看: 3498|回复: 0

[经验分享] 源码安装apache实例

[复制链接]

尚未签到

发表于 2018-11-23 08:38:43 | 显示全部楼层 |阅读模式
  在Redhat/Centos系统中一个软件包的安装一般分为两种方式RPM与compile安装。
  RPM安装方式:
  优点 : 提供快速安装,减少编译安装侦错、困扰。
  缺点 : 因为相关设定需考量普遍性之问题,常以基本通用设定安装,遇有特殊用途或功能易出现不足之处。
  注意事项 : 在安装RPM包时,应特别注意包适用的系统版本。
  compile安装方式:
  优点:编译安装过程,可以设定参数,按照需求,进行安装,并且安装的版本,可以自己选择,灵活性比较大。
  缺点:由于安装包过新或者是其他问题,导致依赖的包没有,或者版本过低。这个时候就要解决包的依赖问题。
  注意事项:源码安装的多了,升级系统后,可能会导致以前手动装的东西无法使用。
  

  安装一个源码包,通常需要三个步骤:
  1. ./config 在这一步可以定制功能,加上相应的选项即可,具有有什么选项可以通过”./config --help ”命令来查看。在这一步会自动检测你的linux系统与相关的包是否有编译该源码包时需要的库,因为一旦缺少某个库就不能完成编译。只有检测通过后才会生成一个Makefile文件。
  2. make 使用这个命令会根据Makefile文件中预设的参数进行编译,这一步其实就是gcc在工作了。
  3. make install 安装步骤,生成相关的软件存放目录和配置文件的过程。
  上面介绍的3步并不是所有的源码包软件都一样的,也可能有安装步骤不是这样的,也就是说源码包的安装并非具有一定的标准安装步骤。这就需要你拿到源码包解压后,然后进入到目录找相关的帮助文档,通常会以INSTALL或者README为文件名。要详细看一下他们的说明文档。
#本机版本
[root@localhost /]# lsb
lsblk        lsb_release
[root@localhost /]# lsb_release -a
LSB Version:    :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: CentOS
Description:    CentOS release 6.5 (Final)
Release:    6.5
Codename:   Final
[root@localhost /]# rpm -e httpd
#默认安装,先行卸载  下面将以源代码方式安装apache
  1、第一步
  从官网http://apache.fayea.com/apache-mirror//httpd/httpd-2.2.26.tar.gz下载到本地。
  2、第二步
  使用tar命令解压
[root@localhost Download]# tar xf httpd-2.2.26.tar.gz
[root@localhost Download]# ls
httpd-2.2.26  httpd-2.2.26.tar.gz
[root@localhost Download]# cd httpd-2.2.26
[root@localhost httpd-2.2.26]# ls
ABOUT_APACHE   configure.in    LAYOUT         os
acinclude.m4   docs            libhttpd.dep   README
Apache.dsw     emacs-style     libhttpd.dsp   README.platforms
build          httpd.dep       libhttpd.mak   README-win32.txt
BuildAll.dsp   httpd.dsp       LICENSE        ROADMAP
BuildBin.dsp   httpd.mak       Makefile.in    server
buildconf      httpd.spec      Makefile.win   srclib
CHANGES        include         modules        support
config.layout  INSTALL         NOTICE         test
configure      InstallBin.dsp  NWGNUmakefile  VERSIONING  3、运行configure脚本(./configure)
  (./configure是用来检查环境变量及配置编译选项的)

  查看./configure --help获取configure使用说明。下述./configure部分配置选项

  --prefix=PREFIX
  :指定Apache的安装目录。
  --exec-prefix=EPREFIX
  体系相关文件的顶级安装目录EPREFIX ,把体系相关的文件安装到不同的位置可以方便地在不同主机之间共享体系相关的文件
  --bindir=DIR
  用户可执行目录DIR 。用于存放对网站管理员很有帮助的htpasswd, dbmmanage之类的支持程序。
  --includedir=DIR
  Apache的头文件目录DIR
  --libdir=DIR
  对象代码库目录DIR 。
  --mandir=DIR
  手册文档目录DIR 。
  --sbindir=DIR
  系统管理员可执行目录DIR ,用于存放运行HTTP服务器所必须的httpd, apachectl, suexec之类的服务程序。
  --sysconfdir=DIR
  只读的单一机器数据目录DIR ,用于存放httpd.conf和mime.types之类的服务器配置文件。
  以上参数说明来自http://apache.jz123.cn/programs/configure.html
[root@localhost httpd-2.2.26]#./configure --prefix=/usr/local/apache --sysconfdir=/etc/httpd --enable-so  编译无错误
  然后执行
[root@localhost httpd-2.2.26]# make &&make install
Installing configuration files
[PRESERVING EXISTING HTDOCS SUBDIR: /usr/local/apache/htdocs]
[PRESERVING EXISTING ERROR SUBDIR: /usr/local/apache/error]
[PRESERVING EXISTING ICONS SUBDIR: /usr/local/apache/icons]
[PRESERVING EXISTING CGI SUBDIR: /usr/local/apache/cgi-bin]
Installing header files
Installing build system files
Installing man pages and online manual
make[1]: Leaving directory `/root/Download/httpd-2.2.26'  make是用来将源代码编译成二进制文件的,而make install则会将make编译出来的文件安装到指定位置(或默认位置)。
  长久:所有用户都有效则
  /etc/profile
  添加二进制文件引用路径
[root@localhost apache]# vim /etc/profile.d/apache.sh
PATH=$PATH:/usr/local/apache/bin
export PATH  重新读取环境变量,以便可以正常apachectl命令启动服务
[root@localhost bin]# . /etc/profile.d/apache.sh
#也可以使用source /etc/profile.d/apache.sh  针对某用户有效  ~/.bash_profile

  临时:
  export PATH=$PATH:/usr/local/apache/bin
  

#启动服务
[root@localhost bin]# apachectl start
[root@localhost apache]# netstat -tnl |grep 80
tcp        0      0 :::80                       :::*                        LISTEN
[root@localhost bin]# elinks http://192.168.1.113
DSC0000.jpg

#导入头文件
[root@localhost /]# ln -sv /usr/local/apache/include/ /usr/include/httpd/
`/usr/include/httpd/include' -> `/usr/local/apache/include/'
#导入库文件
[root@localhost apache]# ln -sv /usr/local/apache/lib /usr/lib/http
`/usr/lib/http' -> `/usr/local/apache/lib'
[root@localhost ~]# vim /etc/ld.so.conf.d/httpd.conf
[root@localhost ~]# cat /etc/ld.so.conf.d/httpd.conf
/usr/local/apache/lib
[root@localhost /]# ldconfig -v
#重读库文件
/usr/local/apache/lib:
libexpat.so.0 -> libexpat.so.0.5.0
libapr-1.so.0 -> libapr-1.so.0.4.8
libaprutil-1.so.0 -> libaprutil-1.so.0.5.2#导入man手册
[root@localhost /]# vim /etc/man.config
MANPATH /usr/local/apache/man  

  =======================================完============================================
  PS:
  本人水平有限,如有错漏,欢迎各种砖头~~~~~~a_c

  





运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-638456-1-1.html 上篇帖子: linux程序安装之源代码及其实例(apache) 下篇帖子: Linux实验报告
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表