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

[经验分享] Apache HTTP服务器扩展模块的工具

[复制链接]

尚未签到

发表于 2018-11-27 09:11:31 | 显示全部楼层 |阅读模式
  大家在看了我的LAMPlinuxapache+mysql+php)平台编译安装的实现的文章后,有的人可能会说:apachemysqlphp的安装是不是太麻烦了?能不能只编译安装php
    答案当然是可以了,只不过虽然编译安装比较麻烦,但整个安装过程你比较熟悉:配置文件在哪个路径、安装在哪个目录、帮助文件在哪儿等等,同时结合php不容易出现问题。虽然编译安装比较麻烦,但还是建议使用编译安装实现LAMP平台的构建。
    如果你非常喜欢只编译安装php也可以,下面我给你一种使用apache的扩展模块工具apxs解决yum安装的httpdphp连接问题。
1.安装httpd


  • # yum install httpd

  • # service httpd start

在地址栏里输入http://172.16.22.1(你输入你自己的IP地址,这个是我的),验证web服务是否可以正常工作。
2.安装mysql
方法和LAMPlinuxapache+mysql+php)平台编译安装的实现的安装mysql的方法一样,这里不再赘述。
说明:这个mysql安装不是编译安装,而是解压之后就可以使用,相当于绿色软件哦。
3.编译安装php
解决依赖关系:


  • # yum -y groupinstall "X Software Development"
  • # yum -y groupinstall "Development Libraries"   # yum -y groupinstall "Development Tools"

如果想让编译的php支持mcrypt扩展,需下载 libmcrypt-2.5.7-5.el5.i386.rpm
libmcrypt-devel-2.5.7-5.el5.i386.rpm两个软件包,此时我们支持扩展。


  • # rpm –ivh libmcrypt-2.5.7-5.el5.i386.rpm libmcrypt-devel-2.5.7-5.el5.i386.rpm

编译安装php-5.3.10
首先下载源码包至本地目录。


  • # tar xvf php-5.3.10.tar.bz2
  • # cd php-5.3.10
  • # ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --with-apxs2=/usr/local/apache/bin/apxs --with-mcrypt

说明:如果前面第1步解决依赖关系时安装mcrypt相关的两个rpm包,此./configure命令还可以带上--with-mcrypt选项以让php支持mycrpt扩展。
说明:此时你是不是发现编译不通过呢?答案是肯定的了,因为你给的路径--with-apxs2=/usr/local/apache/bin/apxs系统找不到apxs,当然就编译不通过了,你说干脆把这一句给删除了,不要了。
不行,此时webphp就不能结合使用了,apxs就是实现apache扩展功能使phpweb服务结合使用的啊。怎么办呢?
仔细想一想:是不是只要编译的时候给的apxs路径系统能找到apxs这个工具就行,yeah,思路正确了,下面就是安装这个工具了。只要安装httpd-devel这个软件包,就会有apxs了。


  • # yum install httpd-devel –y   
  • # rpm –ql httpd-devel | grep “apxs”

此时你会发现真的有apxs这个工具啊!并且路径在/usr/sbin/apxs
DSC0000.jpg

于是赶紧:


  • # ./configure --prefix=/usr/local/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml  --with-apxs2=/usr/sbin/apxs --with-mcrypt

  • # make
  • # make test
  • # make install

php提供配置文件:


  • # cp php.ini-production /usr/local/php/lib/php.ini

编辑apache配置文件httpd.conf,以apache支持php


  • # vim /etc/httpd/httpd.conf

添加如下二行

  AddType application/x-httpd-php  .php
  AddType application/x-httpd-php-source  .phps

定位至DirectoryIndex index.html
   修改为:  

  DirectoryIndex  index.php  index.html

而后重新启动httpd,或让其重新载入配置文件即可测试php是否已经可以正常使用。


  • # service httpd restart

  • #cd /usr/local/apache/htdocs

  • #vim index.php
  •   

此时你发现使用rpm格式的httpd也能和mysql以及编译安装的php构建LAMP平台了。
  补充知识:
      apxs是一个为Apache HTTP服务器编译和安装扩展模块的工具,用于编译一个或多个源程序或目标代码文件为动态共享对象,使之可以用由mod_so提供的LoadModule指令在运行时加载到Apache服务器中。
      因此,要使用这个扩展机制,你的平台必须支持DSO特性,而且Apache httpd必须内建了mod_so模块。apxs工具能自动探测是否具备这样的条件,你也可以自己用这个命令手动探测:
  # httpd -l
      该命令的输出列表中应该mod_so模块。如果所有这些条件均已具备,则可以很容易地借助apxs安装你自己的DSO模块以扩展Apache服务器的功能。




运维网声明 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-640108-1-1.html 上篇帖子: apache httpd 不可不知的基础知识要点 下篇帖子: 如何搭建Eclipse +Apache Tomcat配置Java开发环境
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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