2007年11月5日 星期一

RHEL3(update4)手動更新AMP

基於一些管理的需求,我所管理的一部HP DL380 主機,要能跑AMP!
也就是Apache+MySQL+PHP。
一開始建置主機環境時,是安裝RHEL3(update4)Server環境,
但我現在要它能跑Apache2,MySQL5以及PHP5。
因此之前裝的套件,我都不能再用了。

也由於我們買的RHEL3並没有完成註冊,
而要更新套件我也不想去找原廠的服務,
於是只有自已來手動更新了!

網路上對RHEL3更新AMP的文件不好找,
我原本有以CentOS替代的念頭,
但想到這個改裝OS的大動作,要是主管問起一些奇奇怪怪的問題,
我可能不好回應!

還是維持OS的版本好了!


步驟大致有12個!簡述如下:
Step 1: 配合apache2,更新zlib
Step 2:安裝 OpenSSL
Step 4:安裝支援jpeg的套件
Step 5:加裝freetype
Step 6:加裝libpng
Step 7:安裝 GD Library
Step 8:安裝libiconv
Step 9:進行Apache更新
Step 10:安裝MySql5
Step 11:安裝php5
Step 12:進行 Zend Optimizer

要安裝的套件原始碼tarball
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/SOURCES/zlib-1.2.3.tar.gz
#wget http://ftp.isu.edu.tw/pub/FreeBSD/ports/distfiles/openssl-0.9.7g.tar.gz
#wget http://ftp.acc.umu.se/pub/gnome/sources/libxml2/2.6/libxml2-2.6.16.tar.gz
#wget http://ftp.isu.edu.tw/pub/Unix/GNU/ftp/gnu/ghostscript/jpegsrc.v6b.tar.gz
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/companioncd/sources/freetype-2.1.10.tar.gz
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/SOURCES/libpng-1.2.8.tar.gz
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/SOURCES/gd-2.0.33.tar.gz
#wget http://ftp.ntu.edu.tw/gnu/gnu/libiconv/libiconv-1.10.tar.gz
#wget http://apache.cdpa.nsysu.edu.tw/httpd/httpd-2.0.54.tar.gz
#wget http://downloads.zend.com/optimizer/2.5.10/ZendOptimizer-2.5.10-linux-glibc21-i386.tar.gz

OK,找到一些資料後,開始動手...

Step 1: 配合apache2,更新zlib
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/SOURCES/zlib-1.2.3.tar.gz
#tar zxvf zlib-1.2.3.tar.gz
#cd zlib-1.2.3
#./configure
ps/若是以前裝過zlib,可以不指定路徑,不然建議用 ./configure --prefix=/usr/local/zlib

#make
#make install

Step 2:安裝 OpenSSL
#wget http://ftp.isu.edu.tw/pub/FreeBSD/ports/distfiles/openssl-0.9.7g.tar.gz
#tar zxvf openssl-0.9.7g.tar.gz
#cd openssl-0.9.7g
#./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl
#make
#make install
#ln -s /usr/local/ssl /usr/lib/ssl

ps/OpenSSL安裝時,也建議用以下這方式,參數略有不同。
#cd openssl-0.9.7g
#./config --prefix=/usr/local/ssl --openssldir=/usr/local/ssl shared zlib
#make
#make install
ln -s /usr/local/ssl /usr/lib/ssl

Stpe 3:支援xml用的libxml
#wget http://ftp.acc.umu.se/pub/gnome/sources/libxml2/2.6/libxml2-2.6.16.tar.gz
ps/我常去找套件的義守大學FTP伺服器,剛好没有這個,還好用google找到另一個載點。

#tar -zxvf libxml2-2.6.16.tar.gz
#cd libxml2-2.6.16
#./configure
ps/可不必指定路徑,看參考文件是說安裝php可能找不到它,因為PHP5只支持libxml2-2.5.10以上版本!

#make
#make install


Step 4:安裝支援jpeg的套件、### jpeg ### jpegsrc.v6b.tar.gz ###
#wget http://ftp.isu.edu.tw/pub/Unix/GNU/ftp/gnu/ghostscript/jpegsrc.v6b.tar.gz
#tar zxvf jpegsrc.v6v.tar.gz
#cd jpeg-6b
ps/接下來有點麻煩,竟然要自己手動建目錄,可能是編譯文件没定義進去吧?

#mkdir /usr/local/jpeg
#mkdir /usr/local/jpeg/bin
#mkdir /usr/local/jpeg/lib
#mkdir /usr/local/jpeg/include
#mkdir /usr/local/jpeg/man
#mkdir /usr/local/jpeg/man/man1
ps/注意,是數字一,別搞錯了。

#./configure --prefix=/usr/local/jpeg --enable-shared
ps/configure 之後的參數 一定要有--enable-shared,不然不會生成共享的函式庫。

#make
#make install 或 make install-lib


Step 5:加裝freetype
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/companioncd/sources/freetype-2.1.10.tar.gz
#tar zxvf freetype-2.1.10.tar.gz
#cd freetype-2.1.10
#./configure --prefix=/usr/local/freetype
#make
#make install


Step 6:ksr 加裝libpng
若是用libpng-1.2.8.tar.gz有問題,可改用libpng-1.2.18.tar.gz。
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/SOURCES/libpng-1.2.8.tar.gz
#tar -zxf libpng-1.2.18.tar.gz
#cd libpng-1.2.8
#./configure --prefix=/usr/local/libpng(可能會提示說找不到命令script)

//////////////////////////////////////////////////////////////////////////////////////////////////////////
There is no "configure" script in this distribution of
libpng-1.2.8.有錯誤時的提示內容。
Instead, please copy the appropriate makefile for your system from the
"scripts" directory. Read the INSTALL file for more details.
Update, July 2004: you can get a configure based distribution
from the libpng distribution sites. Download the file
libpng-1.2.8-config.tar.gz
////////////////////////////////////////////////////////////////////////////////////////////////

#make
#make install

ps/注意:如果提示找不到命令script則先執行以下命令。手動生成Makefile!
#cp scripts/makefile.linux makefile


Step 7:安裝 GD Library
#wget http://ftp.isu.edu.tw/pub/Sun/freeware/SOURCES/gd-2.0.33.tar.gz
#tar -zxvf gd-2.0.33.tar.gz
#cd gd-2.0.33
#./configure --prefix=/usr/local/gd --with-jpeg=/usr/local/jpeg --with-freetype=/usr/local/freetype --with-png --with-zlib
#make
#make install

Step 8:安裝libiconv
#wget http://ftp.ntu.edu.tw/gnu/gnu/libiconv/libiconv-1.10.tar.gz
#tar -zxvf libiconv-1.10.tar.gz
#cd libiconv-1.10
#./configure --prefix=/usr/local/libiconv
#make
#make install

ps1/將iconv.h連接到php的安裝source檔的程序中,不然好像進行php 的make會有錯誤
ps2/以下命令備用
# cd /usr/src/php-5.1.2/ext/iconv/
# link /usr/local/libiconv/include/iconv.h iconv.h


Step 9:進行Apache更新
因為php5一定要用Apache2,安裝時要注意一下版本!

cd httpd-2.0.54(php5安装环境需要apache2.0.46以上版本,下载时注意!)
#wget http://apache.cdpa.nsysu.edu.tw/httpd/httpd-2.0.54.tar.gz
#tar zxvf httpd-2.0.54.tar.gz
#./configure --prefix=/usr/local/apache --enable-module=so

ps/以下那行也行,針酌用。
#./configure --prefix=/usr/local/apache --enable-so --enable-ssl

#make
#make install


Step 10:安裝MySql5
到 http://downloads.mysql.com/archives.php 下載RPM即可!
MySQL-client-standard-5.0.27-0.rhel3.i386.rpm
MySQL-devel-standard-5.0.27-0.rhel3.i386.rpm
MySQL-server-standard-5.0.27-0.rhel3.i386.rpm
MySQL-shared-standard-5.0.27-0.rhel3.i386.rpm

#rpm -ivh MySQL-*

#rpm -ivh --nodeps MySQL-*

ps1/有可能提示需要安裝perl-DBI-1.32-9.i386.rpm,視狀況。
ps2/若有因為原套件的衝突。可以參考用...
#rpm -e --nodeps 套件名
移除之後應該就可以順利安裝了。

安裝完後,我們測一下資料庫是否正常運作了。
#service mysql start
ps/若是用service mysqld start會有問題, 因為它是舊的版本。

出現成功啓動的訊息後,登入看看...

#mysql -u root -p
Enter password:
因為剛裝好,密碼應該是空的。直接按Enter即可登入!

Welcome to the MySQL monitor. Commands end with ; or \g.
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
mysql>select version();
+-----------------+
| version() |
+-----------------+
| 5.0.27-standard |
+-----------------+
1 row in set (0.05 sec)

OK了!exit出來吧。


Step 11:安裝php5
去php的官網找!
下載回來後解開它...
#tar -zxvf php-5.2.0.tar.gz
#cd php-5.2.0
#./configure \
--prefix=/usr/local/php \
--with-apxs2=/usr/local/apache/bin/apxs \
--with-xml \
--with-mysql \
--with-freetype-dir=/usr/local/freetype \
--with-gd=/usr/local/gd \
--with-zlib \
--with-jpeg-dir=/usr/local/jpeg \
--with-png-dir=/usr/local/libpng \
--with-iconv=/usr/local/libiconv \
--with-config-file-path=/usr/local/lib \
--disable-debug \
--enable-safe-mode \
--enable-trans-sid \
--enable-memory-limit \
--enable-short-tags \
--disable-posix \
--enable-exif \
--enable-ftp \
--enable-sockets
#make
#make install

ps/如果你順利完成install了,記得複制php.ini。
#cp php.ini-dist /usr/local/php/lib/php.ini

编辑apache配置文件httpd.conf
#vi /usr/local/apache/conf/httpd.conf(注意:为安装目录下配置文件)

要改幾個地方:
AddType application/x-tar .tgz下加一行
AddType application/x-httpd-php .php

找到#LoadModule php5_module modules/libphp5.so 把註解#去掉

找到DirectoryIndex index.html 追加index.php讓index.php可以做啓始頁面。

可能安裝時没訂好參數,user和group有錯誤,需修正。
找到User Group兩行。修改如下!
User apache
Group apache

再找#ServerName 把#去掉,修正成你正確的IP值。

最後是改DocumentRoot的值。把/usr/local/apache/htdocs改成你實際要存放網頁文件的路徑。

還有若是有設AddDefaultCharset的話,把它拿掉吧。有的網頁反而這樣才顯示正常。


#/usr/local/apache/bin/apachectl start 啓動apache

因為不是用rpm安裝,所以service httpd restart指令不用再用。
除非你有動手設定修改!

Step 12:進行 Zend Optimizer

#wget http://downloads.zend.com/optimizer/2.5.10/ZendOptimizer-2.5.10-linux-glibc21-i386.tar.gz
#tar zxvf ZendOptimizer-2.5.10-linux-glibc21-i386.tar.gz
#cd ZendOptimizer-2.5.10-linux-glibc21-i386
#./install
#cp data/5_0_x_comp/ZendOptimizer.so /usr/local/lib
ps/配置相對應的php.ini目錄,修改你所需的項目。

到你的網頁目錄下,編輯index.php 內容是:


OK!找台電腦,開啓FireFox或IE ...看到php的畫面,成功完成全部的套件安裝。

沒有留言:

搜尋此網誌

本站大事記

這個部落格(網站)內容以分享LINUX和延伸出的技術文章為主!
特別是為了工作和進修需要,搜集了不少網站連結。
希望對來這裡觀文的朋友們,有提供一些有用的資訊或文章。
但這裡的文章中,也包含個人的心情扎記和隨興言談……
若是當中沒有對上你的口味,請多包涵!

原「琳娜絲與希斯寇的邂逅」,改名為「愛上琳娜絲」!

原「琳娜絲與希斯寇的邂逅」,改名為「愛上琳娜絲」!
--原序文--
就是當LINUX遇上CISCO啦!他們的結合還能作什麼事…不就是讓這個世界的網路,串…串起來啊…不然你們那能上這網站看部落格!