Apache HTTP服務器擴展模塊的工具-apxs

1.安裝httpdphp

  1. # yum install httpd 
  2.  
  3. # service httpd start 

在地址欄裏輸入http://172.16.22.1(你輸入你本身的IP地址,這個是個人),驗證web服務是否能夠正常工做。html

2.安裝mysqlmysql

方法和LAMP(linux下apache+mysql+php)平臺編譯安裝的實現的安裝mysql的方法同樣,這裏再也不贅述。linux

說明:這個mysql安裝不是編譯安裝,而是解壓以後就可使用,至關於綠色軟件哦。web

3.編譯安裝phpsql

①解決依賴關係:apache

  1. # yum -y groupinstall "X Software Development" 
  2. # yum -y groupinstall "Development Libraries"  # yum -y groupinstall "Development Tools" 

若是想讓編譯的php支持mcrypt擴展,需下載 libmcrypt-2.5.7-5.el5.i386.rpmvim

libmcrypt-devel-2.5.7-5.el5.i386.rpm兩個軟件包,此時咱們支持擴展。服務器

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

②編譯安裝php-5.3.10app

 首先下載源碼包至本地目錄。

  1. # tar xvf php-5.3.10.tar.bz2 
  2. # cd php-5.3.10 
  3. # ./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,固然就編譯不經過了,你說乾脆把這一句給刪除了,不要了。

不行,此時web和php就不能結合使用了,apxs就是實現apache擴展功能使php和web服務結合使用的啊。怎麼辦呢?

仔細想想:是否是隻要編譯的時候給的apxs路徑系統能找到apxs這個工具就行,yeah,思路正確了,下面就是安裝這個工具了。只要安裝httpd-devel這個軟件包,就會有apxs了。

  1. # yum install httpd-devel –y   
  2. # rpm –ql httpd-devel | grep 「apxs」 

此時你會發現真的有apxs這個工具啊!而且路徑在/usr/sbin/apxs

 

因而趕忙:

  1. # ./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 
  2.  
  3. # make 
  4. # make test 
  5. # make install 

爲php提供配置文件:

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

③編輯apache配置文件httpd.conf,以apache支持php

  1. # 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是否已經能夠正常使用。

  1. # service httpd restart 
  2.  
  3. #cd /usr/local/apache/htdocs 
  4.  
  5. #vim index.php 
  6.  <?php 
  7.  phpinfo() 
  8. ?> 

此時你發現使用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服務器的功能。

 

-------------------------------

原文:https://blog.51cto.com/lihuan/821448

相關文章
相關標籤/搜索