Solaris10整合apache與php過程及出錯處理

技術小甜發表於2017-11-16
Solaris 10整合apachephp過程及出錯處理
作者:田逸([email]sery@163.com[/email])發表於[url]http://os.51cto.com/art/200705/47439.htm[/url]
 
前幾天,我在solaris 10上整合apachephp,其間遇到一些問題,很有代表性,在這裡把相關的過程及處理措施記錄下來,希望對大家有所幫助。
 
solaris 9不同的是,solaris 10已經預設安裝GNU開發工具(GCC,make等)。但預設的環境變數沒有把相關的路徑設定進去看路徑是否被設定進去,只要執行不帶選項和引數的命令gcc就知道了find搜尋檔案makegcc,然後把路徑寫進檔案/etc/profile,我的系統的/etc/profile路徑設定如下所示:
export  PATH=$PATH:/usr/ccs/bin:/usr/sfw/bin
改完後執行source /etc/profile就可以了。鑑於solaris 10自帶的tar不太方便,用GNU tar代替它,其過程如下:
gunzip –d tar-1.16.tar.gz
tar xvf tar-1.16.tar
cd tar-1.16
./configure –prefix=/usr/local/gnutar  //指定目錄,不然會出現某些意外
make
make install    //把包安裝在目錄/usr/local/gnutar
mv /usr/sbin/tar  /usr/sbin/tar.orig  //把系統自帶的vi移動到一邊,以便萬一發生意外能夠恢復//回來
ln –s /usr/local/gnutar/bin/tar  /usr/sbin/tar 
 
接下來安裝apache,其過程如下:
cd /root
tar zxvf httpd-2.2.0.tar.gz
cd httpd-2.2.0
./configure –prefix=/usr/local/apache2 –enable-so
make
make install
察看是否生成目錄/usr/local/apache2便知apache是否被正確安裝。
 
安裝php,其過程如下:
cd /root
tar zxvf php-5.2.0.tar.gz
cd php-5.2.0
./configure –prefix=/usr/local/php –with-apxs2=/usr/local/apache2/bin/apxs
………
這個過程不能正常執行下去,出現下面的抱錯資訊:
Configuring extensions
checking whether to enable LIBXML support… yes
checking libxml2 install dir… no
checking for xml2-config path… /usr/bin/xml2-config
configure: error: libxml2 version 2.6.11 or greater required.
這表明系統自帶的libxml2版本低,需要2.6.11以上的版本。有2種辦法解決這個問題:升級libxml2和重新安裝一個libxml2。在執行業務的solaris 環境,升級是一個十分冒險的辦法,我們這裡有很多程式設計師胡亂升級軟體包包系統弄崩潰的先例,所以強烈建議象我一樣保守重新安裝一個新的libxml2—只要我們在原始碼安裝過程中指定了安裝目錄,安裝了新的libxml2後不會對系統產生任何危害,當然佔據那一點磁碟空間是微不足道的了。下面是安裝一個新的 libxml的步驟:
cd /root
tar zxvf libxml2-2.6.26.tar.gz
./configure –prefix=/usr/local/libxml
make
make install
這時我們再回來安裝php
cd /root/php-5.2.0
./configure –prefix=/usr/local/php5 –with-apxs2=/usr/local/apache2/bin/apxs –with-libxml-dir=/usr/local/libxml   //配置很順利的完成了
make
make install
 
最後一個步驟是配置和測試,實際上只需要修改apache的配置檔案httpd.conf。由於在php的配置過程中使用了選項—with-apxs,因此會在htppd.conf檔案中插入LoadModule php5_module modules/libphp5.so一行,先檢查一下看受否被自動寫入;然後再手動插入行“AddType application/x-httpd-php .php .phtml”,注意:.php.phtml前面各有一個空格,沒有這個空格將不能正常解析php頁面,這是一個很容易忽視的問題,請初學者留意。寫一個最簡單的測試檔案index.php,包含“<?php phpinfo(); >”,把它儲存在apache根文件所在的目錄(這裡是/usr/local/apache/htdocs/index.php)。執行/usr/local/apache/bin/apachectl start啟動apache守護程式,從瀏覽器輸入[url]http://ip/index.php[/url]測試,如果出現類似下面的頁面,表明一切正常。
 
GNU原始碼方式來安裝軟體,可使各種平臺的操作方法基本一致,這對負責運營各種linux/unix的系統管理員來說,GNU原始碼是一種很好的選擇。















本文轉自sery51CTO部落格,原文連結:http://blog.51cto.com/sery/27070 ,如需轉載請自行聯絡原作者


相關文章