XP搭建Apache+Tomcat+JSP+PHP+MYSQL環境教程

來源:互聯網
上載者:User
一、環境說明

1、Window XP

2、apache_2.2.11-win32-x86-no_ssl.msihttp://httpd.apache.org/

3、Mod_jk-1.2.28-httpd-2.2.3.sohttp://tomcat.apache.org/download-connectors.cgi

4、apache-tomcat-6.0.18.ziphttp://archive.apache.org/dist/tomcat/tomcat-6/v6.0.18/src/

5、mysql-5.5.15-win32.msihttp://www.mysql.com/

6、php-5.4.35-Win32-VC9-x86http://windows.php.net/download/#php-5.4-ts-VC9-x86

7、jdk-7-ea-bin-b134-windows-i586-17_mar_2011

http://www.oracle.com/technetwork/java/javase/downloads/index.html

打包下載地址:

http://download.csdn.net/detail/itas109/8226595

我的程式分別安裝到

D:\webserver\Apache2.2

D:\webserver\PHP5

D:\webserver\Tapache-tomcat-6.0.18

二、程式安裝

Ⅰ、Apache安裝

註:本例只截取需要注意的,其它預設則不顯示。

1.伺服器資訊可以按照預設配置,如果伺服器的80連接埠沒被其他伺服器程式佔據。可選“for All Users,on Port 80,as a Service?Recommended.”如果僅為目前使用者使用,使用8080連接埠,手動啟動,選擇“only for the Current User, onPort 8080, when started Manually.”。連接埠號碼是可以通過設定檔進行修改的。


2.“Typical”為預設安裝,“Custom”為使用者自訂安裝。

可以選擇“Change”來更改預設安裝路徑,本例按預設安裝。


註:如果你安裝後服務管理列表中沒有出現apache的服務項就說明在安裝過程中出現了錯誤,這時候可以手動進行安裝。

使用cmd進入D:\webserver\Apache2.2\bin這是我本機安裝的目錄, 並執行httpd -k install命令,提示成功後即可在服務管理列表中看到apache服務。

3.運行

如果上面選得連接埠是8080,就輸入http://localhost:8080/。

如果是80連接埠,就輸入http://localhost/。

Ⅱ、MySQL安裝

1.根據需要修改路徑,預設安裝即可,主要是MySQL配置。

2.選擇配置方式:“DetailedConfiguration(手動精確配置)”、”Standard Configuration(標準配置)”,選擇“Detailed Configuration”,

3. 選擇伺服器類型,“Developer Machine(開發測試類別,mysql佔用很少資源)”、“Server Machine(伺服器類型,mysql佔用較多資源)”、“Dedicated MySQL Server Machine(專門的資料庫伺服器,mysql佔用所有可用資源)”,一般選擇“Server Machine”。 可根據實際情況進行選擇。


4. 選擇mysql資料庫的大致用途,“Multifunctional Database(通用多功能型,好)”、“Transactional Database Only(伺服器類型,專註於交易處理,一般)”、“Non-Transactional Database Only(非交易處理型,較簡單,主要做一些監控,記數用,對MySAM資料類型的支援僅限於non-transactional)”,選擇“Transactional Database Only”,本例選擇的是通用多功能型。

5. 對InnoDB Tablespace進行配置,就是為InnoDB資料庫檔案選擇一個儲存空間,如果修改了,要記住位置,重裝的時候要選擇一樣的地方,否則可能會造成資料庫損壞,當然,對資料庫做個備份就沒問題了。使用預設位置。

6. 選擇網站的一半mysql訪問量,同時串連的數目,“Decision Support(DSS)/OLAP(20個左右)”、“Online Transaction Processing(OLTP)(500個左右)”、“Manual Setting(手動設定,自己輸一個數)”,選擇“Online Transaction Processing(OLTP)”。根據自己需要選擇,這裡選擇手動設定。

7. 是否啟用TCP/IP串連,設定連接埠,如果不啟用,就只能在自己的機器上訪問mysql資料庫,選擇“Enable TCP/IP Networking”是否啟用TCP/IP串連,設定連接埠,如果不啟用,就只能在自己的機器上訪問mysql資料庫,選擇“Enable TCP/IP Networking”。

8. 設定資料庫語言編碼,“Standard Character Set”為西文編碼、“Best SupportFor Multilingualism”為RTF-8編碼、“ManualSelected Default Character Set/Collation”為手動設定編碼,這裡選擇utf8。


9.”Install As Windows Service”選擇安裝MySql服務,可自訂服務的名稱。

“Include Bin Directory in Windows PATH”是在機器上添加MySql的環境變數。


10. 選擇“Modify Security Settings”,可根據實際要求勾選上“Enableroot access from remote machines”以便能夠從其他機器上訪問。

11.完成配置後點擊“Execute”執行配置即可。

MySql安裝操作已完成。

測試MySql

Ⅲ、PHP安裝

1、將E:\Program Files\PHP中的php.ini-dist複製為php.ini。

如果沒有php.ini-dist檔案可使用php.ini-development檔案並更改名稱為php.ini(留個備份,好習慣)

php.ini-development 開發用的

php.ini-produciton 生產機用的

2、開啟D:\webserver\PHP5\php.ini修改下列語句行:

3、extension_dir = "D:\webserver\PHP5\ext"


4、default_charset="utf-8"

5、將extension=php_exif.dll、php_gd2.dll、php_imap.dll、php_mbstring.dll、php_mcrypt.dll、php_mime_magic.dll、php_mysql.dll、php_mysqli.dll、php_pdf.dll前面的分號“;”去掉。

6、在【環境變數】的【Path】中加入:; D:\webserver\PHP5; D:\webserver\PHP5\ext兩個值。

7、其它配置

a、在寫php程式中有時會出現這樣的警告:PHP Warning: date(): It is not safe to rely on the system's timezonesettings. You are *required* to use the date.timezone setting or thedate_default_timezone_set() function. In case you used any of those methods andyou are still getting this warning, you most likely misspelled the timezoneidentifier. We selected 'UTC' for '8.0/no DST' instead in D:\xxx\xxx\xxx.php online 10 。這是因為PHP所取的時間是格林威治標準時間,所以和你當地的時間會有出入格林威治標準時間和北京時間大概差8個小時左右,我們可以按照下面的方法解決:

①在頁頭使用date_default_timezone_set()設定我的預設時區為北京時間,即就可以了。

②在php.ini中設定date.timezone的值為PRC,設定好以後的為:date.timezone=PRC,同時取消這一行代碼的注釋,即去掉前面的分號就可以了。

8、httpd.conf的配置:

httpd.conf檔案的位置:D:\webserver\Apache2.2\conf

這是我本機安裝的目錄。註:網上有好多教程說需要把php目錄下的某某dll檔案拷貝到system32下,其實這是不必要的,只需要在httpd.conf中載入php模組即可。

添加並修改下列語句行:

LoadModule php5_module "E:/PHP5/php5apache2_2.dll" PHPIniDir "E:/Program Files/PHP5"AddType application/x-httpd-php .php.phtml 

注意:

① 如果你在連結MySql資料庫的時候出現

Fatal error: Call to undefinedfunction mysql_connect() in C:\xxxxx.php

那就是因為你沒有增加此屬性。

② 如果php安裝目錄裡沒有php5apache2_2.dll,一定是下載的版本不對。

應該是php-5.4.35-Win32-VC9-x86

預設路徑和預設index可以根據自己需要修改

注意:Apache Windows設定檔httpd.conf中要求的目錄分隔字元是用斜線”/”,而PHP Windows設定檔php.ini中書寫目錄時要求的是反斜線”\”,不要弄混了。

配置測試,在指定的目錄(預設為htdocs)中建立index.php 列印php配置資訊。

代碼為

 

運行效果 其中mysql、mysqli載入之後表示可以與mysql串連了


Ⅳ、tomcat與Apache整合

1、為什麼需要整合?

整合的最主要原因是為了在現有的硬體條件下提供最大的負載。

如果單獨使用Tomcat做JSP伺服器,在工作效率上會存在問題,Tomcat處理靜態HTML的能力不如Apache,並且所能承受的最大並發串連數也有一定的限制;

在測試中,當並發串連較多時,Tomcat就會處於“僵死”狀態,對後繼的請求串連失去響應。所以現在提出一個“整合”解決方案:將html與jsp的功能部分進行明確分工,讓tomcat只處理jsp部分,其它的由apache這個web

server處理。Apache與Tomcat各司其職,那麼伺服器的整體效率就能夠得到提升。

因為我們做網站的時候不光需要PHP,還會用到JSP等,也需要tomcat與Apache整合。

2、java環境配置

Jsp運行必須呀java的支援

安裝包正常安裝,完成後進行環境變數配置。

在”我的電腦”的環境變數中,添加JAVA系統變數;具體操作是在“系統變數”地區建立變數名為“JAVA_HOME”的變數,變數值為JDK的安裝路徑,如“D:\Program Files\Java\jdk1.7.0”;接著將JAVA_HOME添加到系統變數Path之中,方法是編輯開啟系統變數Path,在原有的變數值前添加雙引號內的代碼“%JAVA_HOME%/bin;”,其中的分號起分隔作用,不可缺少。

在cmd中運行javac,成功安裝會出現資訊。

3、tomcat環境配置

我們採用的是免安裝版的tomcat,直接解壓到D:\webserver。

在我的電腦->屬性->進階->環境變數->系統變數中添加以下環境變數(假定你的tomcat安裝在D:\webserver\apache-tomcat-6.0.18):

CATALINA_HOME: D:\webserver\apache-tomcat-6.0.18

CATALINA_BASE: D:\webserver\apache-tomcat-6.0.18

TOMCAT_HOME: D:\webserver\apache-tomcat-6.0.18

接著可以啟動tomcat,在IE中訪問http://localhost:8080,如果看到tomcat的歡迎頁面的話說明安裝成功了。

4、Apache和tomcat整合

a. 將mod_jk-1.2.28-httpd-2.2.3.so複製到D:\webserver\Apache2.2\modules(我的apache安裝目錄)

b. 建立 workers.properties 檔案,內容如下:

workers.tomcat_home=D:\webserver\apache-tomcat-6.0.18#讓mod_jk模組知道Tomcat的位置workers.java_home=D:\ProgramFiles\Java\jdk1.7.0 #讓mod_jk模組知道jre的位置 worker.list=ajp13 #模組版本worker.ajp13.port=8009 #工作連接埠,若沒佔用則不用修改worker.ajp13.host=localhost #本機,若上面的Apache主機不為localhost,作相應修改worker.ajp13.type=ajp13 #類型worker.ajp13.lbfactor=1 #代理數,不用修改

拷貝到D:\webserver\apache-tomcat-6.0.18\conf\jk下,這是我tomcat的安裝目錄。

c. 在apache的httpd.conf的內容底部添加配置:

#tomcatLoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.3.soJkWorkersFile"D:/webserver/apache-tomcat-6.0.18/conf/jk/workers.properties"JkLogFile"D:/webserver/apache-tomcat-6.0.18/logs/mod_jk2.log"JkLogLevel info ServerAdmin @hbu.cn#DocumentRoot D:/ServerName localhostDirectoryIndex index.html index.htm index.jspErrorLog logs/shsc-error_log.txtCustomLog logs/shsc-access_log.txt commonJkMount /servlet/* ajp13JkMount /*.jsp ajp13JkMount /*.do ajp13

配置完畢,經測試apache將jsp,servlet,.do請求都交由tomcat處理。其他檔案由apache處理,因為apache的穩定性和

安全性,以及相對於tomcat而言快速的靜態頁處理速度,也可以提高網站的負載能力,前提是網站的靜態頁比較多,例如做了靜態化。

d.apache和tomcat目錄統一

這裡統一為tomcat的目錄

在D:\webserver\Apache2.2\conf下開啟httpd.conf

找到DocumentRoot和Directory設定為tomcat的預設路徑


5、tomcat效能最佳化

a.線程池最佳化

為了提高網站的訪問效能,我們往往會在伺服器端選擇合適的部署環境。最簡單的就是一個tomcat了,但是在高並發的情況下,非常
容易當機。因為tomcat配置的不最佳化。我最早也沒有注意這些細節,因為我知道一個項目的效能不是通過搭建環境體現的,而是演算法的高效,代碼實
現的合理性,以及資料庫的合理使用,最佳化技術的使用等等。不過通過最佳化部署環境應該說是最直接的一種方案了。目前我知道的一種tomcat最佳化
方案是使用tomcat線程池。只需要在server.xml中改改配置就可以了。核心配置代碼:

                       

參考文獻:

1、PHP環境(apache,PHP,Mysql)詳細配置方法

http://blog.csdn.net/jt521xlg/article/details/7533477

2、Apache2.2.11+Tomcat6.0.18整合與實戰筆記、Tomcat的最佳化交流

http://www.cnblogs.com/shiyangxt/archive/2009/08/03/1537842.html

3、在windows XP下搭建Apache+Tomcat+JSP+PHP+MYSQL環境

http://blog.csdn.net/annkie/article/details/7588033

4、Apache與Tomcat叢集配置

http://www.cnblogs.com/obullxl/archive/2011/06/09/apache-tomcat-cluster-config.html

5、tomcat環境變數的配置

http://www.cnblogs.com/mingforyou/archive/2012/04/04/2432025.html

6、Windows環境配置Apache+Mysql+PHP

http://www.cnblogs.com/homezzm/archive/2012/08/01/2618062.html

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.