發新話題

[分享] 《PHP》『安裝PHP』

《PHP》『安裝PHP』

在安裝PHP之前,你必需要知道你要以何種方式去使用PHP。PHP主要使用在以下這三個部份:一個是伺服器端的程式語言,另一個是Command line scripting,最後一個是撰寫client端GUI應用程式。當你能明確的瞭解要以何種方式去使用PHP時,就到PHP的首頁中下載你所需的PHP版本,然後進行安裝的程序。

一、安裝在Unix/Linux系統

許多的Linux distributions系統有一些套件安裝程式,像是RPM等等。這些套件安裝程式能幫助你快速的完成安裝,但假如你需要增加其它的功能,你就必需要重新編譯PHP及(或)網站伺服器,如果你對軟體編譯的過程不熟悉,那麼你只好到網路上找看看,是否有熱心的網友己經將套件編譯好了,且符合你的需求。

 

二、安裝在Unix系統
首先你必需具備下列軟體。

Basic UNIX skills (being able to operate "make" and a C compiler, if compiling)

An ANSI C compiler (if compiling)

flex (for compiling)

bison (for compiling)

A web server

Any module specific components (such as gd, pdf libs, etc.)

下列是將PHP安裝成Apache模組的快速安裝步驟。

1.  gunzip apache_1.3.x.tar.gz
2.  tar xvf apache_1.3.x.tar
3.  gunzip php-x.x.x.tar.gz
4.  tar xvf php-x.x.x.tar
5.  cd apache_1.3.x
6.  ./configure --prefix=/www
7.  cd ../php-x.x.x
8.  ./configure --with-mysql --with-apache=../apache_1.3.x --enable-track-vars
9.  make
10. make install
11. cd ../apache_1.3.x
12. ./configure --activate-module=src/modules/php4/libphp4.a
13. make
14. make install
15. cd ../php-x.x.x
16. cp php.ini-dist /usr/local/lib/php.ini
17. 編輯httpd.conf或srm.conf,加入下面這行:
      AddType application/x-httpd-php .php

18. 以正常的程序重新啟動Apache(必需以stop及start的方式重新起動伺服器)

 

三、安裝在Windows系統
要將PHP安裝在Windows系統,主要有二個方式。一個是以手動的方式來安裝,另一個是以安裝精靈帶領你完成整個完裝過程。當你決定要使用何種方式來安裝後,可以到PHP的首頁下載你所需要的檔案。

使用安裝精靈
下載完後,執行你所下載的檔案,然後安裝精靈會指導你如何安裝。安裝精靈提供二種安裝的方式(如圖),一個是standard,它會採用預設的設定值。另一種是advanced,使用這種方式你必需在每個步驟回答它的問題。



以手動方式安裝
Windows版的PHP有二種型式,一個是CGI executable (php.exe)以及SAPI模組(例如php4isapi.dll)。SAPI模組是PHP4所引進的新型式,並且能提供改進後的顯著效能及一些新的功能。如果你是使用Windows95系統並選擇使用SAPI模組,你必需到微軟DCOM page下載DCOM。

首先到PHP首頁下載.zip二進位檔,然後照下列動作進行安裝即可。

1.將壓縮檔解壓縮到c:\php。
2.你必需確定PHP所使用的那些DLL檔可以被找到,切確的DLL檔,要看你是使用何種伺服器,以及你是否要將PHP安裝成CGI或伺服器模組。如果你是使用伺服器模組(例如ISAPI或Apache),你會使用到php4ts.dll這個檔案,其它你會用到的DLL檔都放在sapi這個資料夾裡面。你如果要使用任何PHP擴充的模組,也必需將這些擴充模組的DLL檔準備好,並把以上這些DLL檔複製到系統目錄中(例如winnt/system32或windows/system)。將你所需要的DLL檔複製到c:\windows\system(Windows 9x/ME系統)或c:\windows\system32(Windows XP)或c:\winnt\system32(Windows NT/2000),假如它已經存在,則將它複蓋下去。你若是使用微軟Windows 9x/NT4的作業系統,請到訪客無法瀏覽此圖片或連結,請先 註冊登入會員 下載最新版的Microsoft Data Access Components (MDAC)。
3.當你將壓縮檔解壓縮後,你會發現裡面有php.ini-dist及php.ini-optimized這二個ini檔,我們建議你使用php.ini-optimized這個檔案,因為這個檔案裡面所預設的設定是較具有安全性的,你也可以修改裡面的設定值來符合你的需求。當你選擇好要使用那一個ini檔後,將它複製到c:\windows(Windows 9x/ME/XP)或c:\winnt(Windows NT/2000),然後將它重新命名為php.ini。
4.編輯php.ini,將extension_dir指到你放置php_*.dll檔的目錄,例如c:\php\extensions。
5.你若是使用OmniHTTPd,請略過此一步驟。設定doc_root指到你的網站根目錄,例如c:\apache\htdocs 或是 c:\webroot。
6.選擇看你想要PHP載入那些擴充模組(見下表),你必需將這些擴充模組的DLL檔準備好,並把這些DLL檔複製到系統目錄中c:\windows\system(Windows 9x/ME系統)或c:\windows\system32(Windows XP)或c:\winnt\system32(Windows NT/2000),然後把php.ini裡的擴充模組名稱前面的註解給去除。
7.若是使用PWS及IIS,你可以設定browscap.ini指到c:\windows\system\inetsrv\browscap.ini(Windows 9x/ME系統)、c:\winnt\system32\inetsrv\browscap.ini(Windows NT/2000系統)、c:\windows\system32\inetsrv\browscap.ini(Windows XP)。
8.你若是使用NTFS(Windows NT、2000、XP),請確定執行網站伺服器的使用者有讀取php.ini的權限。
  Extension    Description    Notes
php_bz2.dll bzip2 compression functions None
php_calendar.dll Calendar conversion functions Built in since PHP 4.0.3
php_cpdf.dll ClibPDF functions None
php_crack.dll Crack functions None
php3_crypt.dll Crypt functions unknown
php_ctype.dll ctype family functions None
php_curl.dll CURL, Client URL library functions Requires: libeay32.dll, ssleay32.dll (bundled)
php_cybercash.dll Cybercash payment functions None
php_db.dll DBM functions Deprecated. Use DBA instead (php_dba.dll)
php_dba.dll DBA: DataBase (dbm-style) Abstraction layer functions None
php_dbase.dll dBase functions None
php3_dbm.dll Berkeley DB2 library unknown
php_domxml.dll DOM XML functions Requires: libxml2.dll (bundled)
php_dotnet.dll .NET functions None
php_exif.dll Read EXIF headers from JPEG None
php_fbsql.dll FrontBase functions None
php_fdf.dll FDF: Forms Data Format functions. Requires: fdftk.dll (bundled)
php_filepro.dll filePro functions Read-only access
php_ftp.dll FTP functions Built-in since PHP 4.0.3
php_gd.dll GD library image functions None
php_gettext.dll Gettext functions Requires: gnu_gettext.dll (bundled)
php_hyperwave.dll HyperWave functions None
php_iconv.dll ICONV characterset conversion Requires: iconv-1.3.dll (bundled)
php_ifx.dll Informix functions Requires: Informix libraries
php_iisfunc.dll IIS management functions None
php_imap.dll IMAP POP3 and NNTP functions PHP 3: php3_imap4r1.dll
php_ingres.dll Ingres II functions Requires: Ingres II libraries
php_interbase.dll InterBase functions Requires: gds32.dll (bundled)
php_java.dll Java extension Requires: jvm.dll (bundled)
php_ldap.dll LDAP functions Requires: libsasl.dll (bundled)
php_mhash.dll Mhash Functions None
php_ming.dll Ming functions for Flash None
php_msql.dll mSQL functions Requires: msql.dll (bundled)
php3_msql1.dll mSQL 1 client unknown
php3_msql2.dll mSQL 2 client unknown
php_mssql.dll MSSQL functions Requires: ntwdblib.dll (bundled)
php3_mysql.dll MySQL functions Built-in in PHP 4
php3_nsmail.dll Netscape mail functions unknown
php3_oci73.dll Oracle functions unknown
php_oci8.dll Oracle 8 functions Requires: Oracle 8 client libraries
php_openssl.dll OpenSSL functions Requires: libeay32.dll (bundled)
php_oracle.dll Oracle functions Requires: Oracle 7 client libraries
php_pdf.dll PDF functions None
php_pgsql.dll PostgreSQL functions None
php_printer.dll Printer functions None
php_xslt.dll XSLT functions Requires: sablot.dll (bundled)
php_snmp.dll SNMP get and walk functions NT only!
php_sybase_ct.dll Sybase functions Requires: Sybase client libraries
php_yaz.dll YAZ functions None
php_zlib.dll ZLib compression functions None


四、在Unix系統上安裝Apache及PHP的細部設定

1.  gunzip apache_xxx.tar.gz
2.  tar xvf apache_xxx.tar
3.  gunzip php-xxx.tar.gz
4.  tar xvf php-xxx.tar
5.  cd apache_xxx
6.  ./configure --prefix=/www --enable-module=so
7.  make
8.  make install
9.  cd ../php-xxx
10. ./configure --with-mysql --with-apxs=/www/bin/apxs
11. make
12. make install

你如果在安裝完成之後,想要將PHP重新編譯加入某些選項,你只需要重複最後三個步驟,然後重新起動Apache就可以了,不需重新再去編譯Apache。

11. cp php.ini-dist /usr/local/lib/php.ini

你可以去編輯php.ini裡面的選項,如果你想要將php.ini放在其它位置,你可以使用--with-config-file-path=/path來加以設定。

12. 編輯httpd.conf或srm.conf,並確定下列這幾行有在檔案裡面而且沒有被註解起來:
  
   AddType application/x-httpd-php .php

   LoadModule php4_module        libexec/libphp4.so

你可以選擇任何其它的副檔名,像是.html .php3等等,.php是較簡單的方式,而且我們也建議採用這種副檔名。LoadModule右手邊的路徑必需正確的指到PHP module的路徑。

13. 以正常的程序重新啟動Apache(必需以stop及start的方式重新起動伺服器)

 

五、在Windows系統上安裝PHP的細部設定(使用Apache伺服器)

PHP可被安裝成二種型式,一個是CGI binary (php.exe),另一個是使用Apache模組DLL。不論你是使用那種型式,都要去編輯httpd.conf或srm.conf,然後重新啟動Apache,使Apache能讓PHP正常的運作。

要將PHP編譯成第一種型式,請編輯Apache組態設定檔httpd.conf,加入下列這三行:

ScriptAlias /php/ "c:/php/"
AddType application/x-httpd-php .php .phtml
Action application/x-httpd-php "/php/php.exe"
上面第二行指令可在httpd.conf裡找到,如果有的話,將前面的註解去除,如果沒有再自行加上去。在第一行的指令c:/php必需指到你安裝PHP的目錄。

要將PHP編譯成第二種型式,請先將php4ts.dll複製到windows/system (Windows 9x/Me)或 winnt/system32 (Windows NT/2000/XP),如果檔案己經存在,就將它覆蓋下去。然後編輯httpd.conf,加入下列三行指令:

LoadModule  php4_module  c:/php/sapi/php4apache.dll
AddModule  mod_php4.c
AddType  application/x-httpd-php  .php  .phtml
這裡有二種方式可以讓你秀出程式的原始碼,如果你是將PHP安裝成Apache模組,你可以在httpd.conf中加入下列這行:AddType  application/x-httpd-php-source  .phps。如果是使用CGI binary,就必需使用show_source( )這個函式,你可以建立一個PHP檔,然後將下列這些程式碼複製到你所建立的那個檔案裡面:<?php  show_source("original_php_script.php"); ?>。original_php_script.php是你想要秀出原始碼的檔案名稱。

 

六、編譯PHP的選項

資料庫方面:

--with-msql [=DIR]

加入mSQL。DIR是mSQL安裝的目錄位置,預設的值是/usr/local/Hughes。

--with-mysql [=DIR]

加入MySQL。DIR是MySQL安裝的目錄位置。

--with-solid [=DIR]

加入Solid。DIR是Solid安裝的目錄位置。

--with-unixODBC [=DIR]

加入unixODBC。DIR是unixODBC安裝的目錄位置,預設的值是/usr/local。

--with-dbmaker [=DIR]

加入DBMaker。DIR是DBMaker安裝的目錄位置。

--with-oracle [=DIR]

加入Oracle。預設的DIR是ORACLE_HOME。

--with-pgsql [=DIR]

加入PostgreSQL。DIR是PostgreSQL安裝的目錄位置,預設的值是/usr/local/pgsql。

--with-sybase [=DIR]

加入Sybase。DIR是Sybase安裝的目錄位置,預設的值是/home/sybase。

--with-sybase-ct [=DIR]

加入Sybase-CT。DIR是Sybase家目錄的位置,預設的值是/home/sybase。

 

PHP設定方面:

--with-config-file-path=PATH

設定php.ini的路徑,預設的值是PREFIX/lib。

--enable-safe-mode

預設上是開啟安全模式。

--with-exec-dir[=DIR]

當開啟安全模式時,只允許執行DIR裡面的檔案,預設的值是/usr/local/php/bin。

--enable-magic-quotes

預設上是開啟魔術引號。

--disable-short-tags

預設上是關閉短標籤型式<?。

 

伺服器方面:

--with-apache [=DIR]

加入Apache模組。DIR預設的值是/usr/local/apache。

 

其它方面:

--enable-force-cgi-redirect

如果將PHP安裝成CGI版本時(使用Apache伺服器),開啟這個選項可以檢查內部的伺服器重新導向。

--enable-discard-path

如果開啟這個選項,PHP CGI binary會被安全地放置在網站目錄以外的地方,使人們無法存取.htaccess,增加系統的安全性。

--with-fastcgi=SRCDIR

將PHP安裝成FastCGI。

--enable-debug

開啟除錯功能。


TOP

回復 #1 蔡逸竹 的帖子

哇!
真是詳細的介紹
感謝你的熱心提供
不管是什麼的系統都難不倒

TOP

真的要多謝寫此帖的大大了, 因為有了他的熱心,我們才不用多花錢去買書

TOP

原來還有這方法多謝大大的仔細的解說.........

TOP

發新話題

本站所有圖文均屬網友發表,僅代表作者的觀點與本站無關,如有侵權請通知版主會盡快刪除。