鄧美玲 王鷹漢
摘 要:該校園網(wǎng)Web服務(wù)器采用PHP+MySQL+Apache的前后臺(tái)結(jié)構(gòu),這是當(dāng)今網(wǎng)站開(kāi)發(fā)中一種比較流行的方案。通過(guò)PHP編程、MySQL數(shù)據(jù)庫(kù)存儲(chǔ)、Apache發(fā)布等各種技術(shù)手段,使網(wǎng)站運(yùn)行具有相當(dāng)好的安全性和穩(wěn)定性。
關(guān)鍵詞:校園網(wǎng) Web服務(wù)器 PHP編程 MySQL數(shù)據(jù)庫(kù) Apache
中圖分類(lèi)號(hào):TP393.02 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-3973(2013)007-067-02
本文是針對(duì)高職院校校園網(wǎng)的Web服務(wù)器設(shè)計(jì)與配置而寫(xiě)。作為一個(gè)功能完備的校園網(wǎng),可以提供強(qiáng)大的多媒體信息發(fā)布功能、資源管理功能、身份驗(yàn)證功能、系統(tǒng)維護(hù)功能等。
目前,Web服務(wù)器的主流方案有很多,比如:ASP+ Access / SQLServer +IIS、ASP.NET+SQLServer+IIS+.NET Framework、JSP+SQLServer+Tomcat、PHP+MySQL+Apache等。本文推薦的服務(wù)器是基于Windows Server 2003操作系統(tǒng)PHP+MySQL+Apache的架構(gòu)。這種組合的優(yōu)點(diǎn)速度快,源代碼都是開(kāi)放的。
PHP是英文Personal Hypertext Preprocessor的縮寫(xiě),即超文本預(yù)處理器。是一種服務(wù)器端的專(zhuān)門(mén)用于Web設(shè)計(jì)的多用途腳本語(yǔ)言。MySQL是一個(gè)非常快速并且強(qiáng)大的關(guān)系數(shù)據(jù)庫(kù)管理系統(tǒng)(RDBMS)??梢詫?shí)現(xiàn)高效的存儲(chǔ)、查找、排序和查詢(xún)數(shù)據(jù)。MySQL服務(wù)器控制對(duì)數(shù)據(jù)的訪問(wèn),以確保能夠多用戶(hù)同時(shí)工作,提供快速訪問(wèn)并確保只有授權(quán)用戶(hù)可以進(jìn)入。Apache是世界排名第一的Web服務(wù)器,根據(jù)Netcraft(www.netsraft.co.uk)所作的調(diào)查,世界上50%以上的Web服務(wù)器在使用Apache。它快速、可靠、可通過(guò)簡(jiǎn)單的 API 擴(kuò)展,Perl/Python 解釋器可被編譯到服務(wù)器中,完全免費(fèi),完全源代碼開(kāi)放。
使用PHP+MySQL+Apache架構(gòu)配置服務(wù)器的基本流程如下:
1 安裝配置MySQL數(shù)據(jù)庫(kù),設(shè)置根用戶(hù)的密碼并授權(quán)新用戶(hù)
(1)首先下載MySQL安裝文件,運(yùn)行setup.exe程序。我們選擇安裝在自定義的D:\Apache\MySQL下,安裝模式選擇典型安裝。
(2)MySQL權(quán)限設(shè)置。當(dāng)MySQL第一次被安裝時(shí),它會(huì)生成一個(gè)叫“root”的用戶(hù),密碼自己設(shè)定。
(3)使用phpMyAdmin來(lái)管理MySQL數(shù)據(jù)庫(kù)。從網(wǎng)上下載phpMyAdmin壓縮包,解壓并安裝到D:\Apache\test,配置config.default.php文件即可。然后在瀏覽器中輸入:http://localhost/phpMyAdmin/, 就可以從網(wǎng)頁(yè)上進(jìn)入MySQL數(shù)據(jù)庫(kù)。
通過(guò)phpMyAdmin可以創(chuàng)建用戶(hù)并設(shè)置其相應(yīng)的權(quán)限,也可以創(chuàng)建數(shù)據(jù)庫(kù)和數(shù)據(jù)表等,非常方便。
2 安裝配置Apache服務(wù)器,修改httpd.conf文件以實(shí)現(xiàn)服務(wù)器所需功能
(1)下載Windows版本擴(kuò)展名為.msi的Apache。安裝路徑為D:\Apache\Apache2.2,典型安裝。
(2)初步配置。配置Apache目錄(D:\Apache\Apache2.2\)的conf子目錄的httpd.conf的文件,具體作法是:
1)改變?yōu)g覽器的默認(rèn)訪問(wèn)路徑。
用戶(hù)通常希望改變?yōu)g覽器的默認(rèn)訪問(wèn)路徑,在httpd.conf文件的最后加上如下代碼:
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
Apache中有若干個(gè)由
2)使Apache支持PHP。
在httpd.conf的文件的最后加上如下代碼:
PHPIniDir "D:\Apache\php"
LoadModule php5_module "D:\Apache\php\php5apache2_2.dll"
AddType application/x-httpd-php .php
3)設(shè)置所訪問(wèn)目錄的默認(rèn)頁(yè)。
要設(shè)置所訪問(wèn)目錄的默認(rèn)頁(yè),需要DirectoryIndex進(jìn)行修改。
DirectoryIndex index.html index.php
需要說(shuō)明的是,DirectoryIndex后的文件名參數(shù)可以為多個(gè),優(yōu)先權(quán)從左到右依次降低。
注意:每次修改httpd.conf文件之后,必須重啟Apache服務(wù)。
3 安裝配置PHP解析器,修改php.ini文件以實(shí)現(xiàn)網(wǎng)站所需要的各種功能
3.1 安裝PHP
下載PHP安裝文件,安裝路徑為(D:\Apache\php),選擇典型安裝。
3.2 設(shè)置腳本的最大運(yùn)行時(shí)間
在配置文件中的max_execution_time配置選項(xiàng),用來(lái)控制腳本的最大運(yùn)行時(shí)間。針對(duì)網(wǎng)站的實(shí)際需求,我們暫設(shè)置腳本的最大運(yùn)行時(shí)間為300秒:
max_execution_time = 300
3.3 配置文件上傳功能
校園網(wǎng)要求具備信息發(fā)布功能和資源管理功能,使它具有文件上傳功能,因此,修改php.ini文件:
file_uploads = On (表示是否允許 HTTP 文件上傳)
upload_tmp_dir = D:\Apache\tmp(表示文件上傳時(shí)存放文件的臨時(shí)目錄,該目錄必須是 PHP 進(jìn)程所有用戶(hù)可寫(xiě)的目錄,我已更改系統(tǒng)默認(rèn)的上傳臨時(shí)目錄,即為D:\Apache\tmp)
upload_max_filesize = 200M(表示所上傳文件的最大大小為200M)
post_max_size = 201M(用來(lái)設(shè)定 POST 數(shù)據(jù)所允許的最大大?。?/p>
其中,file_uploads、upload_tmp_dir、upload_max_filesize是文件上傳的三個(gè)配置選項(xiàng)。
3.4 自動(dòng)啟動(dòng)session
網(wǎng)站中通過(guò)session來(lái)跟蹤用戶(hù)。有用戶(hù)訪問(wèn)網(wǎng)站時(shí),網(wǎng)站自動(dòng)啟動(dòng)一個(gè)能唯一標(biāo)識(shí)該用戶(hù)身份的session變量,以此提供個(gè)性化的服務(wù),該session變量將一直存在,直到用戶(hù)退出登錄。
在啟用session功能前,得自動(dòng)啟動(dòng)一個(gè)session。最簡(jiǎn)單的方法就是通過(guò)修改php.ini文件中的session.auto_start來(lái)完成該設(shè)置,設(shè)置如下:
session.auto_start = 1
至此,一個(gè)高職院校使用的校園網(wǎng)Web服務(wù)器已基本配置完畢,如果網(wǎng)站使用了ZendOptimizer進(jìn)行加密源程序,即還要相應(yīng)的安裝ZendOptimizer程序,ZendOptimizer是一個(gè)免費(fèi)的應(yīng)用程序,反向編譯經(jīng)過(guò)ZendCore編碼的工具,可以提高PHP程序的性能,
經(jīng)過(guò)測(cè)試驗(yàn)證,該服務(wù)器具有運(yùn)行速度快、安全穩(wěn)定、易于維護(hù)等特點(diǎn)。由于各網(wǎng)站的需求的有所差別,按本文所述的步驟在配置不同的校園網(wǎng)服務(wù)器的過(guò)程中會(huì)存在差異,屆時(shí)當(dāng)針對(duì)具體問(wèn)題予以解決,以使服務(wù)器的運(yùn)行狀態(tài)達(dá)到最佳。
(課題項(xiàng)目:項(xiàng)目教學(xué)法在網(wǎng)頁(yè)設(shè)計(jì)課程中的應(yīng)用研究,江西省教育廳,教改課題,JXJG-11-49-2)
參考文獻(xiàn):
[1] Luke Welling & Laura Thomson.PHP與MySQL Web開(kāi)發(fā)權(quán)威指南[M].聶頌.譯.北京:中國(guó)電力出版社,2002:56-68.
[2] 高壽福.PHP程序設(shè)計(jì)導(dǎo)學(xué)[M].北京:科海電子出版社,2003:73-76.
[3] 孔長(zhǎng)征.網(wǎng)站建設(shè)與維護(hù)[M].北京:人民郵電出版社,2006:81-82.
[4] 杜江.PHP5與MySQL5 Web開(kāi)發(fā)技術(shù)詳解[M].北京:電子工業(yè)出版社,2007:101-103.