felayman—–PHP環境搭建

PHP是一種伺服器端的嵌入式腳本語言,是一種伺服器端、跨平臺、面向對象、HTML嵌入式的腳本語言。本章將向讀者介紹PHP開發環境搭建,常用的配置問題和解決方案。通過本章的學習,讀者能夠學到以下內容。

更換驗證碼

: Windows——AppserV集成安裝包搭建PHP環境

: Linux——XAMPP集成安裝包搭建PHP環境

: PHP開發環境的關鍵配置信息

: 解決PHP的常見配置問題

1.1 PHP環境搭建

1.1.1 AppServ—Windows版PHP集成化安裝包

AppServ將Apache、PHP、MySQL和phpMyAdmin等伺服器軟件和工具安裝配置完成後打包處理。開發人員隻要到網站上下載該軟件,然後安裝,即可完成PHP開發環境的快速搭建。非常適合初學者使用。

註意:在使用AppServ搭建PHP開發環境時,必須確保在系統中沒有安裝Apache、PHP和MySQL。否則,要先將這些軟件卸載,然後應用AppServ。

下面講解AppServ集成化安裝包搭建PHP開發環境的具體操作步驟:

(1)雙擊AppServ-win32-2.5.10.exe文件,打開如圖1.1所示的AppServ啟動頁面。

vcD4KPHA+o6gyo6m1pbv3zbwxLjHW0LXETmV4dLC0xaWjrLTyv6rI5828MS4yy/nKvrXEQXBwU2VydrCy17DQrdLp0rPD5qGjPC9wPgo8cD6jqDOjqbWlu/fNvDEuMtbQtcRJIEFncmVlsLTFpbTyv6rI5828MS4zy/nKvrXE0rPD5qGjyejWw0FwcFNlcna1xLCy17DCt762o6jErMjPsLLXsMK3vrbSu7DjzqqjukU6XEFwcFNlcnajqaOsQXBwU2VydrCy17DN6rPJuvNBcGFjaGWhok15U1FMoaJQSFC2vL2r0tTX08S/wry1xNDOyr205rSitb24w8S/wrzPwqGjPC9wPgo8aW1nIHNyYz0=”/uploadfile/Collfiles/20140416/20140416091307333.jpg” alt=”\”>

(4)單擊圖1.3中的Next按鈕打開如圖1.4所示的頁面。選擇要安裝的程式和組件(默認為全選)。

註意:在圖1.4的操作步驟中,如果本機中已經安裝MySQL伺服器,那麼在這裡可以不勾選MySQL Database選項,仍使用本機已經存在的MySQL伺服器。

(5)在圖1.4中單擊Next按鈕,打開如圖1.5所示的頁面。填寫計算機名稱,添加郵箱地址,設置Apache的端口號,默認為80端口。

技巧:Apache伺服器端口號的設置,直接關系到Apache伺服器是否能夠正常啟動。如果本機中的80端口被IIS或者迅雷占用,那麼這裡就需要修改Apache的端口號,或者將IIS、迅雷的端口號修改,才能完成Apache伺服器的配置。如果出現端口沖突,那麼將導致安裝失敗,Apache服務不能啟動。

(6)單擊圖1.5中的Next按鈕,打開如圖1.6所示的頁面。設置MySQL伺服器root用戶的登錄密碼及字符集。

技巧:MySQL伺服器字符集的設置,可以選擇UTF-8、GBK或者GB2312。這裡將字符集設置為“UTF-8 Unicode”,表示MySQL伺服器的字符集將采用UTF8編碼。

註意:對於在圖1.6中設置的MySQL伺服器root用戶的密碼必須牢記,因為程式在連接伺服器時必須使用這個密碼。

的程式時,要修改連接伺服器的密碼。如果忘記安裝時設置密碼,最直接有效的解決方式是重新安裝AppServ。

(7)單擊圖1.6中的Install按鈕開始安裝,如圖1.7所示。

(8)安裝完成後可以在開始菜單的AppServ相關操作列表中啟動Apache及MySQL服務,如圖1.8所示。

1.2 PHP開發環境的關鍵配置信息

前面介紹瞭PHP開發環境的配置方法,除瞭安裝步驟本身之外,PHP與伺服器的配置也是十分重要的。下面將主要介紹PHP及Apache伺服器的配置。

1.2.1 Apache伺服器的基本配置

Apache伺服器的設置文件在Linux操作系統中位於/usr/local/apache/conf/(在Windows操作系統中位於“/etc/httpd/conf”)目錄下,基本上使用以下3個配置文件來配置Apache伺服器的行為。

t access.conf:用於配置伺服器的訪問權限,控制不同用戶和計算機的訪問限制。

t httpd.conf:用於設置伺服器啟動的基本環境。

t srm.conf:主要用於作文件資源上的設定。

技巧:http.conf是Apache伺服器的配置文件,其常用的配置包括:Apache伺服器的端口號、伺服器的訪問路徑和偽靜態的設置。

ServerName localhost:80

DocumentRoot “/xampp/htdocs”

LoadModule rewrite_module modules/mod_rewrite.so

1.2.2 PHP.INI文件的基本配置

php.ini文件是PHP在啟動時自動讀取的配置文件。php.ini是一個ASCLL文本文件,分為多個部分,每一部分包括相關的參數。每一部分的名稱位於最前面的方括號內,接著是名稱對數字,每一名稱都獨占一行。使用規則PHP代碼,對參數名稱非常敏感,不能包含有空格,但是參數可以是數字,字符串或者佈爾邏輯數。分號位於每一行的開始,其作為指定標記,這就使選擇使用或者不使用PHP的這些特性變得很方便,而無需通過刪除該行來實現。對某特性進行註釋(即,添加分號),則該行將不會被編譯執行。每次修改完php.ini文件,必須重新啟動Apache伺服器,以使新的設置生效。

技巧:php.ini是PHP的配置文件,用於加載各種函數庫、設置錯誤級別和設置伺服器的時間等等。在Linux操作系統中,php.ini存儲於/opt/lampp/etc/php.ini 文件夾下,而在Windwos操作系統中php.ini存儲於系統盤的windows文件下。php.ini文件的基本配置如表1.1所示。

表1.1 php.ini文件的基本配置

參數

說明

默認值

error_reporting

設置錯誤處理的級別。推薦值為E_ALL & ~E_NOTICE & ~E_STRICT,顯示所有錯誤信息,除瞭提醒和編碼標準化警告。

E_ALL & ~E_NOTICE & ~E_STRICT

register_globals

通常情況下可以將此變量設置為Off,這樣可以對通過表單進行的腳本攻擊提供更為安全的防范措施

register_globals = On

include_path

設置PHP的搜索路徑,這一參數可以接收系列的目錄。當PHP遇到沒有路徑的文件提示時,它將會自動檢測這些目錄,需要註意的是,當某些選項允許多個值,應使用系統列表分隔符,在Windows下使用分號“;”,在Linux下使用冒號“:”

; UNIX: “/path1:/path2”

;include_path = “.:/php/includes”

; Windows: “\path1;\path2”

;include_path = “.;c:\php\includes”

extension_dir

指定PHP的動態連接擴展庫的目錄

“\ext”目錄下

extension

指定PHP啟動時所加載的動態連接擴展庫。PHP的常用擴展庫及其說明請參見表1.2

PHP的常用擴展庫在初次安裝配置後均被註釋,需讀者手動更改

file_uploads

設置是否允許通過HTTP上傳文件

file_uploads=On

upload_tmp_dir

設置通過HTTP上傳文件時的臨時目錄,如果為空,則使用系統的臨時目錄

upload_tmp_dir =空

upload_max_filesize

設置允許上傳文件的大小,如“50M”,必須填寫單位

upload_max_filesize=2M

post_max_size

控制在采用POST方法進行一次表單提交中PHP所能夠接收的最大容量。要上傳更大的文件,則該值必須大於upload_max_filesize的值。

如upload_max_filesize=10M,那麼upload_max_filesize的值必須要大於10M

post_max_size = 8M

max_input_time

以秒為單位對通過POST、GET以及PUT方式接收數據時間進行限制

max_input_time = 60

表1.2 PHP常用擴展庫及其說明

擴張庫

說明

php_ftp.dll

支持FTP函數庫,可以實現客戶機與伺服器之間標準傳送協議(FTP)

php_gd2.dll

支持圖像處理函數庫,支持對.gif、.jpg、.png等多種圖像格式

php_imap.dll

支持imap電子郵件處理函數庫

php_mssql.dll

支持MsSQL伺服器

php_msql.dll

支持mSQL伺服器

php_MySQL.dll

支持MySQL伺服器

php_oracle.dll

支持Oracle伺服器

php_pdf.dll

支持PDF文件處理函數庫

php_sockets.dll

支持Sockets處理函數庫

php_zlib.dll

支持zlib文件壓縮函數庫

php_pdo.dll

支持PDO伺服器抽象層

php_pdo_mysql.dll

支持MySQL伺服器

php_pdo_mssql.dll

支持MS SQL Server伺服器

php_pdo_oci8.dll

支持Oracle伺服器

php_pdo_odbc.dll

支持ODBC伺服器

php_pdo_pgsql.dll

支持PGSQL伺服器

1.3 解決PHP的常見配置問題

程式運行出錯是許多程式員最為頭疼的問題,下面介紹PHP常見的配置問題。通過本節的學習,可以分清哪些錯誤是由於PHP環境配置不當產生的,從而避免不必要的時間資源浪費,高效的完成Web應用程式的開發。

1.3.1 解決Apache伺服器端口沖突

IIS的默認端口號為80,同Apache伺服器默認端口號相同。由於采用瞭相同的端口號80,因此,在運行網頁時就會發生沖突。

如果用戶機器上安裝瞭IIS,就需要修改IIS的默認端口,否則將導致Apache伺服器無法正常工作。更改IIS的默認偵聽端口80,可以在IIS的管理器中進行設置,或者停止IIS的服務也可以。

用戶也可以在安裝Apache伺服器時將默認的端口號進行更改,從而解決兩個伺服器共用一個端口號而產生沖突的問題。

技巧:如果在搭建PHP環境時,將Apache的端口號設置為82,那麼在通過瀏覽器訪問項目時,則應該輸入https://127.0.0.1:82/或者https://localhost:82/。

1.3.2 設置PHP的系統當前時間

由於php 5.0對date()函數進行瞭重寫,因此,目前的日期時間函數比系統時間少8個小時。在PHP語言中默認設置的是標準的格林威治時間(即采用的是零時區),所以要獲取本地當前的時間必須更改PHP語言中的時區設置。方法如下:

在php.ini文件中,找到[date]下的“;date.timezone =”選項,將該項修改為“date.timezone =Asia/Hong_Kong”,然後重新啟動Apache伺服器。

設置完成後,在輸出系統當前的時間就不會出現時差問題。

1.3.3 增加PHP擴展模塊

增加PHP擴展模塊也稱為動態擴展,用來動態加載某個模塊,它包含一個指令:extension。

在Windows操作系統下,加載模塊的方法如下。打開php.ini文件,定位到如下位置,去掉;tension=php_java.dll前面的分號,保存後重新啟動Apache伺服器,即完成擴展模塊的加載操作。

;tension=php_java.dll

在Linux操作系統下,加載模塊的方法如下。

extension=php_java.so

需要說明的是,隻加載這一行代碼並不一定能啟用相關的擴展包,有時還需要確保在操作系統中安裝相關的軟件。例如:為啟用java支持,需要安裝JDK。

You May Also Like