Apache2.2+ PHP5.14+Zend3.01+MySQL 5.0.22+tomcat5.5.17+Axis安裝配置

Apache2.2+ PHP5.14+Zend3.01+MySQL 5.0.22+tomcat5.5.17+Axis安裝配置

V0.1 20060718 廣州

      

花了一整天時間搞定了apache,tomcat,php,zend,mysql,phpMyAdmin,discuz,dedecms,axis等等php&jsp開發環境的安裝配置,好辛苦啊。不忍心獨享,分享給大家看看,也許有幫助吧。我選擇的都是最新版的安裝包(具體地址我沒記錄,您可以到相關的官網上去找),而本文是在我安裝成功後寫下的,非完全實踐性教程,如有疏漏請可以聯繫我,我再更正!

       本文提及的所有軟件都安裝/解壓在C盤根目錄下,比如php5.14解壓到C:/php5,mysql5.02安裝到c:/mysql5Zend解壓到C:/ZendOptimizer301

我使用的軟件包如下圖:

另外,我還使用的jdk 1.6 beta(您使用1.5應該也可以,tomcat55需要1.5才能跑),您需要配置jdk環境變量等,這裏我不再說明

Apache 2.2.2的配置

httpd.conf文件中添加/修改如下配置

ServerName localhost:80

DocumentRoot "C:/Apache22/htdocs"

#Listen 10.200.3.127:8080

Listen 80

DirectoryIndex index.html index.htm index.php index.phtml index.jsp

 

apache 2.2.2 + PHP5.1.4 不能運行的解決辦法
1
下載http://www.apachelounge.com/download/mods/php5apache2.dll-php5.1.x.zip這個補丁,解壓

2. php5apache2.dll 改名爲php5apache22.dll拷貝到PHP5的根目錄下.

3. httpd.exe.manifest 文件複製到你的apache2.2安裝目錄下的bin文件夾下.

4.雙擊運行vcredist_x86.exe安裝.(如果您的系統裏已安裝了 .NET framework 2.就可以省掉這一步)
完成!

 

Php5.14的安裝配置

修改c:/php5下的php.ini-dist文件名爲php.ini.

修改php.ini.中相關配置項:

extension_dir = "C:/php5/ext"

然後去掉

extension=php_mbstring.dll

extension=php_gd2.dll

extension=php_imap.dll

extension=php_ldap.dll

extension=php_mysql.dll

等前面的#號,當然你全部去掉也沒問題,不過沒什麼必要,因爲咱們用不到這些擴展

extension_dir = "C:/php5/ext" 指定就可以了,不用把這些dll都複製到系統目錄(網上許多文章提及)。

httpd.conf文件中添加做如下配置:

 

PHPIniDir "C:/php5"

LoadModule php5_module "C:/php5/php5apache2.dll"

AddType application/x-httpd-php .php

 

注:PHPIniDir "C:/php5" 這條很關鍵,指明在哪裏去找php.ini文件。由於在apacheconf文件中設置了PHPIniDir,故不需要將php.ini文件複製到windows目錄。

Zend引擎安裝

PHP.ini文件中添加Zend支持

[Zend]

zend_extension_manager.optimizer_ts="C:/ZendOptimizer301/lib/Optimizer-3.0.1"

zend_extension_ts="C:/ZendOptimizer301/lib/ZendExtensionManager.dll"

zend_optimizer.optimization_level=15

將上面這一段複製到php.ini文件最後,保存就OK了。

 

Mysql 5.022的配置

Mysql安裝後好,我使用MySQLInstanceConfig.exe程序配置的,沒有直接修改my.ini文件。當然你也可以直接修改,網上已經有不少安裝指南可參考。由於是開發環境,這裏我把root用戶的密碼設置爲root,必要的時候再做修改吧。

PHP連接mysql密碼認證問題。使用下面的命令解決

mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('root') WHERE Host = 'localhost' AND User = 'root';

修改上面命令行中的用戶名和密碼

 

Tomcat 5.5.17配置

我將tomcat安裝到C:/Tomcat 5.5,安裝時要選擇jdk,它能找到jdk的安裝目錄就可以了。

注:如果要用apache的較早期版本連接tomcat或做集羣,則需要配置conf目錄裏的相關文件

       下載安裝Tomcat Admin包,將confserver複製到tomcat home下。從http://localhost:8080/admin登陸管理你的tomcat,用戶名密碼在tomcat-users.xml文件中,你可以修改。默認是admin/admin

       配置tomcat的虛擬目錄。在catalina/localhost目錄下新建一個xxxx.xml文件,寫上類似<Context path="/axis14" docBase="C:/axis14/webapps/axis" reloadable="true" debug="0"></Context>這樣的內容,就指定了一個虛擬目錄,自己試試吧。我這裏設置到了axis14的安裝目錄裏,你可以設置到你單獨的一個應用另外,不要設置到你的php目錄哦!

       順便下載安裝mysql jdbc connector吧,將解壓後的jar文件放到common/lib下,以及jdkjre/lib/ext下。注意你的環境變量哦。

配置apachetomcat的連接

由於我的apache不僅要處理php請求,還要處理jsp請求,故連接到tomcat也是必不可少的。作法如下:

   1 http://www.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.6
            
下載mod_jk_1.2.6_2.0.50.dll文件,將其改名爲mod_jk.so後放到apache2/modules目錄中。

2.

以下是apache2.0的安裝,我使用的是2.22,只要配置代碼就可以了。

apache/conf/httpd.conf文件末尾,添加下面一段:

#配置apache連接tomcat

LoadModule jk_module modules/mod_jk.so

JkWorkersFile "C:/Tomcat 5.5/conf/workers.properties"

 

#JkMount /* ajp13

JkMount /servlet-servlet/* ajp13

#JkAutoAlias "C:/Tomcat 5.5/webapps"

3.

打開記事本,輸入下列語句,以workers.properties爲文件名保存在tomcat安裝目錄/conf目錄下:

workers.tomcat_home=C:/Tomcat 5.5

workers.java_home=C:/Program Files/Java/jdk1.6.0

ps=/

worker.list=ajp13

worker.ajp13.port=8009

worker.ajp13.host=localhost

worker.ajp13.type=ajp13

worker.ajp13.lbfactor=1

 

3.2.22下設置代理就可以連接tomcat,不需要再使用JKjk已經不更新了),在httpd.conf文件中做如下配置:

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

去掉以上兩句前的#號。

#禁止使用proxy_ajp代理的目錄:

ProxyPass /images/ !

ProxyPass /imobile !

ProxyPass /phpMyAdmin !

ProxyPass /dedecmsv301 !

 

#使用proxy_ajp代理;下面的配置,是把所有目錄全用代理(當然,還會跟上面的禁用配置組合成完整的規則)

ProxyPass / ajp://127.0.0.1:8009/

ProxyPassReverse / ajp://127.0.0.1:8009/

 

說明:代理配置花了我不少時間,網上資料太少了。apache 2.2支持代理模塊很多,值得花時間去研究一下!

Axis的安裝

Axis不僅僅是一個SOAP引擎,它還包括:
   
一個獨立運行的SOAP服務器
   
一個servlet引擎的插件,這個servlet引擎可以是Tomcat
   
WSDL的擴展支持

   
一個將WSDL的描述生成JAVA類的工具
   
一些示例代碼
   
還有一個監控TCP/IP包的工具

 

要用Axis開發Web Services,你需要先安裝jdktomcat

1.http://ws.apache.org/axis/dist 下載新版的axis

我使用的是1.4,下載後解壓到C:/axis14

2.配置環境變量:

AXISCLASSPATH=C:/axis14/lib

AXIS_HOME=C:/Tomcat 5.5/webapps/axis

AXIS_LIB=C:/axis14/lib

CATALINA_HOME=C:/Tomcat 5.5

同時把C:/axis14/lib添加到你的classpath環境變量中去(以上路徑請自選替換成你的安裝路徑)

 

http://localhost/axis/happyaxis.jsp?locale=en

 

編寫批處理文件,用於啓動和停止服務

Start.bat:

@echo off

C:/Apache22/bin/httpd.exe -k install -n ApacheTomcat

C:/MySQL5/bin/mysqld-nt.exe --install-manual NeoMysql --defaults-file=C:/MySQL5/my.ini

net start ApacheTomcat

net start ApacheTomcat

 

start http://localhost

 

Stop.bat:

@echo off

net stop ApacheTomcat

net stop ApacheTomcat

 

C:/Apache22/bin/httpd.exe -k uninstall -n ApacheTomcat

C:/MySQL5/bin/mysqld-nt.exe --remove NeoMysql

 

以上兩個批處理文件放在C盤跟目錄下,批處理文件中apachemysql的所對應的路徑請自行修改。Tomcat需要設置爲自動啓動(當然也可以在上面的bat文件中添加啓動控制語句)

測試

1.執行start.bat啓動服務。

2.訪問phpinfo();頁面確認php是否正常執行,zend引擎有沒生效。其它加載模塊是否可用。

 

3.mysql測試

>mysql -h localhost -u root –p

測試你的mysql是否正常運行,如果可以就可以安裝你的php應用了如果出錯,可能是mysql配置上有問題,或者沒正常啓動。

4.配置phpmysqladmin,連接數據庫

5.訪問localhost應該可以看到tomcatindex.html,對應到webapps目錄。其它php應用放在禁止使用proxy_ajp的目錄下。

6.安裝、測試你的其它應用吧(php就放在htdoc目錄下,jsp就放webapps目錄下吧。必要的時候再改一下apacheproxy_ajp配置)

 

DedeDiscuz等其它一些系統安裝

在安裝了phpmysql後,我先後安裝了dedediscuzphpmyadmin等系統,還有我自己讀書時寫的mysqladmin當時可比phpmyadmin好用哦,可惜俺不開放,沒開源出去….

我安裝的當然是最新版的phpmyadmin2.8.01,它的安裝有所變化,不再是直接修改config.inc.php文件。下載後直接解壓到到你的htdoc目錄裏,訪問其index.php(它會調用安裝腳本),根據提示輸入相應的參數,主要是mysql的用戶密碼什麼的,最後佔擊界面上的download下載這個config.inc.php文件,放在phpmyadmin的目錄下。如果你的配置參數無誤,再次訪問index.php應該可以登陸了。這裏要說明的是所有配置項最好都進去update一把,不然以後要更改config.ini.php文件的參數就比較麻煩了。

Dedediscuz都很好安裝,直接看看它的幫助,執行它們的腳本程序,然後admin登陸,配置你的內容吧。另外還可以安裝些插件,我裝了兩個,還不錯,再改改就是自己的風格了,這裏不再贅述。

Mambo也不錯,我蠻喜歡的。不過mysql5方面支持得不好,使用mysql4沒問題。最後,我還是選擇以前用過的dede

CMS方面,我還下載了Phpnuk, Drupal等,不過沒安裝,phpnuke以前用過,drupal就不清楚了,聽評論不錯。

       Postgresql,我很感興趣的東東,我不知道安裝了多少次了,從最初的版本開始。8.0支持windows了,可是一直沒有對它有個深入的瞭解和學習,這次一定藉助PHP對它好好研究一下。

       Smarty,我還真是第一次接觸不知道phplib現在怎樣了?不過smarty有點意思。

其它一些以前記得或用過的一些系統好像落伍了,故我也沒有找它們出來。我想有了dedediscuz我的目標已經達成了一大半了。

 

後記

寫本文的目的是給php&jsp的開發者朋友一些提示和建議,由於這些軟件採用的是最新版的,安裝配置時難免遇到問題,希望以上說明能對您有所幫助。如果您是在服務器上做配置,建議您還是要花大力氣去研究這些軟件纔是!

另,如果有空了,專門做個安裝包,把一些優秀的軟件都打包進來,省得大家做這麼多亂幾八糟的配置

PHP6快發佈了吧,真是激動人心啊。這麼優秀的東西,如果大的廠商早點支持,還會有JSP嗎?

好久不寫東西了

插曲:

       1.幾年沒有搞PHP了,想來我老本是PHP的元老啊,如今淪落了點。最近想搞一個網站,在asp/php/jsp間輾轉幾天,最後決定咱還是以PHP爲主吧。PHP的性能優勢咱知道,ASP咱也能寫些東西,Jsp目前還差點,不過咱的網站是要支持客戶的應用系統的,支持JSP也是有必要地。哦,這裏我只是想說我這幾天發現了不少好東西而已,話到一邊去了。

2.我用的是xp,ultraedit中編輯的中文複製到word時出現亂碼,在網上查了一下,原因是英文鍵盤引起的,在控制面版,輸入法中刪除了默認的英文鍵盤,添加了中文鍵盤爲默認,就不會出現複製粘貼時的亂碼了。

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章