Apache,PHP,MySQL,Java 完整安裝心得

Apache,PHP,MySQL,Java 完整安裝心得

Java+PHP+MySQL+PostgreSQL+Apache 完整安裝心得

這篇文章我已經發表很久了,還曾經被收錄到Linuxfab的精華區中,

我查了紀錄,每個月大約都還有50人次在查閱這篇文章,所以就將這篇文章移轉過來

(cont)

Source code 名稱 版本 下載位址

1. J2SDK

1.4.0 beta2 http://java.sun.com/j2se/1.4/

2. JSDK

2.0 http://java.sun.com/products/servlet/download.html

3. OpenSSL

0.9.6b http://www.openssl.org/source/

4. mm

1.1.3 http://www.engelschall.com/sw/mm/

5. mod_ssl

1.3.22 http://www.modssl.org/source/

6. mod_perl

1.26 http://perl.apache.org/dist/

7. Apche

1.3.22 http://www.apache.org/dist/

8. imap

2001a ftp://ftp.cac.washington.edu/imap/imap-2001a.RELEASE-CANDIDATE.2.tar.Z

9. MySQL

3.22.43 http://www.mysql.com/downloads/

10. PostgreSQL

7.1.3 ftp://ftp.postgresql.org/pub/

11. pdflib

4.0.1 http://www.pdflib.com/pdflib/download/index.html

12. freetype

2.0.5 http://prdownloads.sourceforge.net/freetype/

13. gd

2.0.1 http://www.boutell.com/gd/http/

14. curl

7.9 http://curl.haxx.se/download.html

15. zlib

1.1.3 http://www.gzip.org/zlib/

16. php

4.0.6 http://www.php.net/downloads.php

17. JAXP

1.0.1 http://java.sun.com/xml/archive.html

18. JSSE

1.0.2 http://java.sun.com/products/jsse/index-102.html

19. Tomcat

4.0 http://jakarta.apache.org/builds/jakarta-tomcat-4.0/release/v4.0/

20. Tomcat (src)

3.2.3(src) http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.2.3/src/

21. Tomcat (bin)

3.2.3(bin) http://jakarta.apache.org/builds/jakarta-tomcat/release/v3.2.3/bin/

@@ 我把所有的source code 都放在 /usr/local/src 這個目錄下

@@ 我使用的 Linux 是 MDK8.1

@@ 安裝前請先更新 libc 到 5.0 的版本…不然在編mod_ssl時候會有問題

1. J2SDK 1.4.0 beta2 and JSDK2.0

 1-1 cp j2sdk-1_4_0-beta2-linux-i386.bin /usr/local/

 1-2 chmod 777 j2sdk-1_4_0-beta2-linux-i386.bin

 1-3 ./j2sdk-1_4_0-beta2-linux-i386.bin

 1-4 按空白鍵,最後輸入Yes

 1-5 mv j2sdk-1_4_0/ j2sdk/

 1-6 cp jsdk20-solaris2-sparc[1].tar.Z /usr/local

 1-7 tar -zxvf jsdk20-solaris2-sparc[1].tar.Z

 1-8 cd /root

 1-9 vi .bashrc

 1-10 加上這幾行

  1-10-1 JAVA_HOME=/usr/local/j2sdk

  1-10-2 PATH=$JAVA_HOME:$JAVA_HOME/bin

  1-10-3 CLASSPATH=/usr/local/j2sdk/lib/tools.jar:/usr/local/JSDK2.0/lib/jsdk.jar:$HOME/java-class

  1-10-4 export JAVA_HOME CLASSPATH

 1-11 rm -rf j2sdk-1_4_0-beta2-linux-i386.bin –> 如果你要節省空間才需要作

 1-12 rm -rf jsdk20-solaris2-sparc[1].tar.Z –> 如果你要節省空間才需要作

  ** 如果你想所有的使用者都可以使用java , 請繼續作下面部分 **

 1-13 cd /etc

 1-14 vi profile

 1-15 add follow lines

  1-15-1 JAVA_HOME=/usr/local/j2sdk

  1-15-2 PATH=$JAVA_HOME:$JAVA_HOME/bin

  1-15-3 CLASSPATH=/usr/local/j2sdk/lib/tools.jar:/usr/local/JSDK2.0/lib/jsdk.jar:$HOME/java-class

  1-15-4 export JAVA_HOME CLASSPATH

  ** ps. 我設定 $HOME/java-class 讓所有使用者的java class都必須放在java-class這個資料夾才可以使用

 1-16 test

  1-16-1 which javait 會顯示 /usr/local/j2sdk/bin/java

  1-16-2 Hello Java World

   1-16-2-1 用 vi 或其他你習慣的編輯器編輯下面這段測試用程式碼

     class HelloJavaWorld

     {

      public static void main(String[] args)

      {

       System.out.println(“Hello Java World!”);

      }

     }

   1-16-2-2 javac HelloJavaWorld系統會產生一個叫 HelloJavaWorld.class 的檔案

   1-16-2-3 java HelloJavaWorld當你看到 > Hello Java World! 就代表你之前的安裝都已經成功了

——————————————————————————–

2 OpenSSL

 2-1 tar -zxvf openssl-0.9.6b.tar.gz

 2-2 cd openssl-0.9.6b

 2-3 ./config –prefix=/usr/local/openssl

 2-4 make

 2-5 make test2-6 make install

——————————————————————————–

3 mm

 3-1 tar -zxvf mm-1.1.3.tar.gz

 3-2 cd mm-1.1.3

 3-3 ./configure –prefix=/usr/local/lib/mm

 3-4 make

 3-5 make test

 3-6 make install

 3-7 cd /etc

 3-8 vi ld.so.conf and add /usr/local/lib/mm/lib

 3-9 cd /sbin 3-10 ./ldconfing

——————————————————————————–

4 mod_ssl

 4-1 tar -zxvf apache_1.3.22.tar.gz

 4-2 tar -zxvf mod_ssl-2.8.5-1.3.22.tar.gz

 4-3 cd mod_ssl-2.8.5-1.3.22

 4-4 ./configure –with-apache=/usr/local/apache_1.3.22 –with-ssl=/usr/local/openssl –enable-shared=ssl –with-mm=/usr/local/lib/mm/lib

——————————————————————————–

5 mod_perl

 5-1 tar -zxvf mod_perl-1.26.tar.gz

 5-2 cd mod_perl-1.26

 5-3 perl Makefile.PL EVERYTHING=1 APACHE_SRC=../apache_1.3.22/src USE_APACI=1 PREP_HTTPD=1 DO_HTTPD=1

 5-4 make

 5-5 make install

——————————————————————————–

6 Apache

 6-1 cd apache-1.3.22

 6-2 EAPI_MM=”/usr/local/lib/mm” SSL_BASE=”/usr/local/openssl” ./configure –prefix=/usr/local/apache

   –enable-module=unique_id –enable-module=rewrite –enable-module=speling –enable-module=expires

   –enable-module=info –enable-module=log_agent –enable-module=log_referer –enable-module=usertrack

   –enable-module=proxy –enable-module=userdir –enable-module=so –enable-module=most –enable-shared=max

   –enable-shared=ssl –enable-module=ssl –activate-module=src/modules/perl/libperl.a –enable-module=perl

 6-3 make

 6-4 make certificate TYPE=dummy –> 測試用途

   make certificate TYPE=custom –> 正式用途,你必須回答許多問題

 6-5 make install

 6-6 /usr/local/apache/bin

 6-7 ./apachect1 startssl –> start with ssl./apachect1 start –> start without ssl

 6-8 開啟你的瀏覽器

 6-9 http://localhost/ –> 不論你使用 apachectl start 或 apachectl startssl 啟動 apache 都可以看到這個網頁

 6-10 https://localhost –> 只有使用 apachectl startssl 啟動 apache 才會看到這個頁面

 6-11 測試cgi

 6-12 cd ../

 6-13 chmod +x cgi-bin/*

 6-14 http://localhost/cgi-bin/testcgi

 6-15 http://localhost/cgi-bin/printenv

——————————————————————————–

7 imap c-client

 7-1 tar -zxvf imap-2001a.RELEASE-CANDIDATE.2.tar.Z

 7-2 mv imap-2001a.RELEASE-CANDIDATE.2 imap

 7-3 cd imap

 7-4 make slx

——————————————————————————–

8 MySQL

 8-1 tar -zxvf mysql-3.23.43.tar.gz

 8-2 cd mysql-3.23.43

 8-3 ./configure –prefix=/usr/local/mysql –with-charset=big5

 8-4 make

 8-5 make install

 8-6 cd /etc

 8-7 vi ld.so.conf 然後加上 /usr/local/mysql/lib/mysql

 8-8 cd /sbin

 8-9 ./ldconfig

 8-10 adduser mysql

 8-11 cd /etc

 8-12 vi passwd

 8-13 找出 /home/mysql 並且把他改成 /usr/local/mysql/lib/mysql

 8-14 cd /usr/local/

 8-15 chown -R mysql:mysql mysql/

 8-16 cd mysql/bin

 8-17 ./mysql_install_db

 8-18 cd ../share/mysql

 8-19 ./mysql.server start

 8-20 測試 –> ps -ax 你會看到下面的資訊

    2391 ? S 0:00 /usr/local/mysql/libexec/mysqld –basedir=/usr/local/

    2393 ? S 0:00 /usr/local/mysql/libexec/mysqld –basedir=/usr/local/

    2394 ? S 0:00 /usr/local/mysql/libexec/mysqld –basedir=/usr/local/

——————————————————————————–

9 PostgreSQL

 9-1 tar -zxvf postgresql-7.1.3.tar.gz

 9-2 cd postgresql-7.1.3

 9-3 ./configure –prefix=/usr/local/pgsql –with-perl –with-odbc –enable-multibyte=MULE_INTERNAL

 9-4 gmake

 9-5 gmake install

 9-6 adduser postgres

 9-7 cd /etc

 9-8 編輯 ld.so.conf 加入 /usr/local/pgsql/lib

 9-9 cd /sbin

 9-10 ./ldconfig

 9-11 cd /etc

 9-12 vi passwd

 9-13 找出 /var/lib/pgsql 改成 /usr/local/pgsql

 9-14 su – postgres

 9-15 /usr/local/pgsql/bin/initdb -D /usr/local/pgsql/data

 9-16 /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/data >logfile 2>&1 &

 9-17 /usr/local/pgsql/bin/createdb test

 9-18 /usr/local/pgsql/bin/psql test

 9-19 測試 –>ps -ax你會看到下面的資訊

    2597 ? S 0:00 /usr/local/pgsql/bin/postmaster -D /usr/local/pgsql/d

——————————————————————————–

10 pdflib

 10-1 tar -zxvf pdflib-4.0.1.tar.gz

 10-2 cd pdflib-4.0.1

 10-3 ./configure –prefix=/usr/local/lib/pdf –enable-shared-pdflib –enable-cxx

 10-4 make

 10-5 make install

 10-6 cd /etc

 10-7 編輯 ld.so.conf

 10-8 加入 /usr/local/lib/pdf/lib

 10-9 cd /sbin

 10-10 ./ldconfig

——————————————————————————–

11 freetype

 11-1 tar -zxvf freetype-2.0.5.tar.gz

 11-2 cd freetype-2.0.5

 11-3 make setup CFG=”–prefix=/usr/local”

 11-4 make

 11-5 make install

——————————————————————————–

12 gd (我發現 GD-1.8.x 似乎不支援 TrueType version 2 , 所以我安裝 2.0.1)

 12-1 tar -zxvf gd-2.0.1.tar.gz

 12-2 cd gd-2.0.1

 12-3 輸入 freetype-config –cflags 系統會告訴你的freetype lib 裝在哪裡,我的是裝在-I/usr/local/include/freetype2

   @@ 如果你的系統找不到freetype-config這個指令你可以到 cd /usr/bin下執行 ./freetype-config –cflags

 12-4 vi Makefile 找出 INCLUDEDIRS=-I. -I/usr/include/freetype2

   把他改成 INCLUDEDIRS=-I. -I/usr/local/include/freetype2

   @@ 後面那段必須輸入和你剛剛找到的路徑一樣

 12-5 make

 12-6 make install

 12-7 make libgd.a

——————————————————————————–

13 curl1

 13-1 tar -zxvf curl-7.9.tar.gz

 13-2 cd curl-7.9

 13-3 ./configure –prefix=/usr/local/lib

 13-4 make

 13-5 make install

——————————————————————————–

14 zlib

 14-1 tar -zxvf zlib-1.1.3.tar.gz1

 14-2 cd zlib-1.1.3

 14-3 ./configure -s

 14-4 make install

——————————————————————————–

15 php

 15-1 tar -zxvf php-4.0.6.tar.gz

 15-2 cd php-4.0.6

 15-3 ./configure –prefix=/usr/local/php –with-apxs=/usr/local/apache/bin/apxs –with-mysql=/usr/local/mysql

   –with-pgsql=/usr/local/pgsql –enable-track-vars –enable-trans-sid –enable-safe-mode –enable-versioning

   –enable-ftp –disable-debug –with-ttf –with-xml –with-imap=../imap –with-pdflib=/usr/local

   –with-openssl=/usr/local/openssl –with-mm=/usr/local/lib/mm –with-gd –enable-gd-native-tt –with-freetype-dir

   –with-png-dir –with-jpeg-dir –with-zlib-dir –with-curl

 15-4 make

 15-5 make install

 15-6 cp /usr/local/php-4.0.6/php.ini-dist /usr/local/lib/php.ini

 15-7 cd /usr/local/apache/conf 我們需要編輯下面這幾行

  15-7-1 找出這段

     

      LoadModule ssl_module libexec/libssl.so

      LoadModule php4_module libexec/libphp4.so

     

    把他改成

     

      LoadModule ssl_module libexec/libssl.so

     


      LoadModule php4_module libexec/libphp4.so

  15-7-2 找出這段 DirectoryIndex index.html

     把他改成 DirectoryIndex index.php index.php3 index.htm index.html

  15-7-3 找出這段

      #AddType application/x-httpd-php .php

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

     把他改成

      AddType application/x-httpd-php .php .php3 .phtml

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

 15-8 restart apachecd ../bin./apachectl restart

 15-9 edit a phpinfo pagecd ../htdocs編輯一個檔案 info.php 內容 –> < ?php phpinfo(); ?>

 15-10 測試 http://localhost/info.php or https://localhost/info.php

    如果你可以看到 php 的相關資訊 , 那你就完成了剛剛的東西了 ^_^

——————————————————————————–

@@ 下面我們要開始安裝 Tomcat 囉,我把相關的東西都準備安裝在/usr/local/jakarta 這個目錄底下所以我們要先做幾件事情

 M1 cd /usr/local

  M1-1 mkdir jakarta

  M1-2 cd /root

  M1-3 vi .bashrc

   要加幾行東西喔…

    1.JAKARTA_HOME=/usr/local/jakarta

    2.TOMCAT_HOME=$JAKARTA_HOME/tomcat

    3.export JAKARTA_HOME TOMCAT_HOME

@@ 所以現在我們的 /root/.bashrc 和 /etc/profile應該要有下面這些資訊(我有稍微整理過一下^_^)

  JAVA_HOME=/usr/local/j2sdk

  JAKARTA_HOME=/usr/local/jakarta

  TOMCAT_HOME=$JAKARTA_HOME/tomcat

  export JAVA_HOME JAKART_HOME TOMCAT_HOME

  PATH=$JAVA_HOME:$JAVA_HOME/binCLASSPATH=$JAVA_HOME/lib/tools.jar:/usr/local/JSDK2.0/lib/jsdk.jar:$HOME/java-class

  export PATH CLASSPATH

——————————————————————————–

16 JAXP : Java XML Parser Library

 16-1 解開檔案

 16-2 mv jaxp1.0.1 jaxp

 16-3 cd /usr/local/jakarta/jaxp

 16-4 cp *.jar $JAVA_HOME/jre/lib/ext

——————————————————————————–

17 JSSE : Secure Sockets Library

 17-1 解開檔案

 17-2 mv jsse1.0.2 jsse

 17-3 cd jsse

 17-4 cp *.jar $JAVA_HOME/jre/lib/ext

 17-5 測試一下我們的 JAVA 的 SSL 是不是已經安裝完成

  17-5-1 用你習慣的編輯器輸入以下程式碼…檔名叫做TestSSL.java

      import javax.net.ssl.*;

       public class TestSSL

       {

        public static void main(String [] arstring)

        {

          try

          {

           new java.net.URL(“https://” + arstring[0] + “/”).getContent();

          }

          catch (Exception exception)

          {

           exception.printStackTrace();

          }

        }

       }

  17-5-2 javac TestSSL.java

  17-5-3 接著我們要執行剛剛的java囉…請輸入以下的指令

     [root@demo jsse]# java -Djava.protocol.handler.pkgs=com.sun.net.ssl.internal.www.protocol TestSSL sourceforge.net

     [root@demo jsse]# echo $?

     0

     [root@demo jsse]#

     這樣就測試ok啦 ^^

——————————————————————————–

@@ 接下來的 Tomcat 你可以依自己的需要安裝3.2.3 或 3.3 或 4.0 的板本

18 Tomcat 4.0

 18-1 tar -zxvf jakarta-tomcat-4.0.tar.gz

 18-2 mv jakarta-tomcat-4.0 tomcat

 18-3 cd tomcat/bin

 18-4 /usr/local/apache/bin/apachectl stop –>如果你的apache原本就是為啟動的狀態,就不需執行此行

 18-5 ./startup.sh

 18-6 /usr/local/apache/bin/apachectl startssl

 18-7 測試一下,用瀏覽器開啟下列網址

  18-7-1 http://localhost/

  18-7-2 https://localhost/

  18-7-3 http://localhost:8080/

——————————————————————————–

19 Tomcat 3.2.3

 19-1 tar -zxvf jakarta-tomcat-3.2.3-src.tar.gz

 19-2 mv jakarta-tomcat-3.2.3-src src-tomcat

 19-3 cd src-tomcat/src/native/apache1.3

 19-4 vi Makefile.linux

  19-4-1 找出 #JAVA_HOME 改成 JAVA_HOME=/usr/local/j2sdk

  19-4-2 找出 APXS=/usr/sbin/apxs改成 APXS=/usr/local/apache/bin/apxs

 19-5 make -f Makefile.linux all

 19-6 cp mod_jk.so /usr/local/apache/libexec

 19-7 tar -zxvf jakarta-tomcat-3.2.3.tar-gz

 19-8 mv jakarta-tomcat-3.2.3 tomcat

 19-9 cd /usr/local/apache/conf

  19-9-1 vi httpd.conf

  19-9-2 在檔案最後加上 Include /usr/local/jakarta/tomcat/conf/mod_jk.conf

 19-10 測試

  19-10-1 cd /usr/local/jakarta/tomcat/bin

  19-10-2 /usr/local/apache/bin/apachectl stop –>如果你的apache原本就是為啟動的狀態,就不需執行此行

  19-10-3 ./startup.sh

  19-10-4 /usr/local/apache/bin/apachectl startssl

  19-10-5 用瀏覽器開啟下列網址

    19-10-5-1 http://localhost/

    19-10-5-2 https://localhost/

    19-10-5-3 http://localhost:8080/

——————————————————————————–

| 後記 |

這是我第一次寫心得分享,因為我對Linux並不是如此熟悉,因此這些東西總共花了我一個多星期.

過程中出現的錯誤訊息,在我的好朋友 darkhero [ [email protected] ] 的協助和我自己努力(^_^)下一一解決了,很謝謝他.

這篇心得分享算是第一步驟,因為現在我正在安裝 Cocoon 和了解 Tomcat 上如何整合 SSL

對於這篇文章如果有任何錯誤與指教請大家不吝指導,

也歡迎到我的網站上大家一起討論 祝大家都能順利安裝成功 ^_^

Post Tags :

阿維

阿維雜記本的偷懶維護者