1 頁 (共 1 頁)

php.ini 設定細部選項

發表於 : 週四 2月 16, 2006 5:30 pm
布魯斯
php.ini 設定細部選項
--------------------------------------------------------------------------------



php.ini 或 php3.ini 是 PHP 在啟動時會讀取的設定檔。該檔的存放路徑為 /usr/local/lib/。在 PHP 3.x 版的設定檔為 php3.ini;而在 PHP 4.x 版改為 php.ini。若 PHP 安裝成伺服器的模組,則在 Web 伺服器啟動執行時會讀取,之後就不再讀取,因此更動設定的話要重新啟動 Web 伺服器。若使用獨立 PHP CGI 方式,則每次都讀一次。
要看目前的系統設定,可以用 phpinfo() 看到。以下為選項設定


php_value name value
設定變數名稱和值。本選項需 PHP 4.x 版之後方可使用。

php_flag name on|off
設定旗標布林變數選項。本選項需 PHP 4.x 版之後方可使用。

php_admin_value name value
設定 Apache 的設定檔變數。原來在 .htaccess 的設定改到這個選項設定。本選項需 PHP 4.x 版之後方可使用。

php_admin_flag name on|off
設定布林變數當旗標。本選項需 PHP 4.x 版之後方可使用。

asp_tags boolean
設定 PHP 程式是否剖析以 ASP Script 語法 <% %> 的標記 (tag)。本選項在 PHP 3.0.4 之後才可使用。更多的細節可以參考 嵌入方法 的部份。

auto_append_file string
設定本選項可以讓指定的檔案附加在原 PHP 程式後面自動執行。若 PHP 程式中有用到 exit() 函式,則指定的檔案不會執行。參數 string 即為指定自動執行的檔案。

auto_prepend_file string
設定本選項可以讓指定的檔案在原 PHP 程式之前自動執行。參數 string 即為指定自動執行的檔案。

cgi_ext string
本選項設定 CGI 程式的副檔名。

display_errors boolean
本選項設定是否要將執行的錯誤訊息顯示在使用者的瀏覽器上。

doc_root string
設定伺服器的文件及 PHP 檔案放置的根目錄。

engine boolean
本選項需要使用阿帕契的模組方式使用 PHP。可設定是否要使用 PHP 引擎。在 httpd.conf 中加入 php3_engine on/off 亦可設定某目錄或某虛擬站台是否要用 PHP 解譯器。

error_log string
本選項用來設定錯誤記錄檔。在 UNIX 系統上參數 string 即為檔名。Windows NT 會將記錄記在事件檢視器的日誌之中。Windows 95/98 則不支援系統記錄。

error_reporting integer
本選項用來設定系統記錄的等級。參數 integer 即為等級的級數旗標,可以加在一起,內定值為 7,見下表
級數 說明
1 一般的錯誤
2 一般的警告
4 剖析錯誤
8 非關鍵的警告


open_basedir string
本選項用來設定提供 PHP 存取的最底層目錄。從該指定目錄之下的檔案或目錄,PHP 程式方可存取。使用本選項主要是為了系統安全性的考量。參數 string 即為欲限制的最底層目錄節點。值得注意的是在 UNIX 系統中,若該節點之下的檔案或目錄有符號鏈結 (symbolic link),則可能會讓使用本選項的目的打折,因此在目錄的設計上考量,也是 Webmaster 的重要任務。內定值是所有檔案均可存取。在 PHP 3.0.7 版之後,可以設定多個底層目錄。

gpc_order string
設定 GET/POST/COOKIE 三種模組的順序及規則。參數 string 即為欲設定的規則,例如:設定成 "GP" 表示忽視 cookie,並在存取方法 (method) 相同時,以 POST 取代 GET。

ignore_user_abort string
內定值為 Off。用來設定當傳輸未完成時,使用者端斷線是要繼續處理。

include_path string
為 PHP 程式中 require、include 及 fopen_with_path 等函式的檔案搜尋路徑。在 UNIX 或 Windows 中的斜線方向不同。

log_errors boolean
指定程式錯誤時是否要記錄在 log 檔中。

magic_quotes_gpc boolean
設定 GET/POST/COOKIE 三種模組的特殊字元,包含單引號、雙引號、反斜線、及空字元 (NUL) 是否要自動加入反斜線當溢出字元。

magic_quotes_runtime boolean
設定傳回資料是否自動加入反斜線當溢出字元。

magic_quotes_sybase boolean
設定 sybase 資料中單引號要自動加上反斜線當溢出字元。

max_execution_time integer
設定程式最久執行時間。單位是秒。

memory_limit integer
設定程式最多使用多少記憶體。

short_open_tag boolean
設定是否使用短的 PHP 標記 (<? ?>)。若不使用,則必須要用 <?php 作為程式的開頭,若要使程式合乎 XML 的標準則要關閉本功能。

track_errors boolean
打開本選項可使最後的錯誤訊息跟著全域變數 $php_errormsg。

track_vars boolean
打開本選項可讓使用者輸入的字串自動剖析到變數之中,而不用自己處理。

upload_tmp_dir string
指定上傳檔案暫存路徑。

user_dir string
指定使用者自家目錄的路徑。

warn_plus_overloading boolean
若打開本選項,字串間就只能用英文的句號 (.) 連結,而不能用加號 (+) 連結字串。

SMTP string
在 Windows 系列作業系統中,用來指定 SMTP 伺服器,供 mail 函式使用。參數 string 為 SMTP 伺服器名字。

sendmail_from string
設定 "From: " 字串供 Windows 系列作業系統使用 mail 函式。

sendmail_path string
設定 sendmail 程式的放置路徑。例如 /usr/sbin/sendmail。

safe_mode boolean
設定 PHP 在安全模式下執行。

safe_mode_exec_dir string
設定安全模式程式執行的路徑。

debugger.host string
指定遠端除錯的伺服器名稱,可以是 IP 或 Domain Name。

debugger.port string
設定遠端除錯伺服器的埠號 (port)。

debugger.enabled boolean
設定是否可以為除錯模式。

enable_dl boolean
本選項要使用阿帕契模組 (Apache module) 的方式才有效。用來設定 PHP 的 dl() 函式可否作用。當系統處於安全模式 (safe-mode) 時,本選項 enable 也無法使用 dl() 函式。

extension_dir string
設定動態函式的路徑。

extension string
PHP 啟動時所要載入的動態擴充功能。

mysql.allow_persistent boolean
設定是否允許 MySQL 資料庫長期連線 (persistent connections),會影響 mysql_pconnect() 函式。

mysql.max_persistent integer
設定每個處理程序最多保持幾個 MySQL 長期連線。

mysql.max_links integer
設定每個處理程式最多開幾個 MySQL 連線,包括長期連線。

msql.allow_persistent boolean
設定是否允許 mSQL 資料庫長期連線 (persistent connections),會影響 msql_pconnect() 函式。

msql.max_persistent integer
設定每個處理程序最多保持幾個 mSQL 長期連線。

msql.max_links integer
設定每個處理程式最多開幾個 mSQL 連線,包括長期連線。

pgsql.allow_persistent boolean
設定是否允許 Postgres 資料庫長期連線 (persistent connections),會影響 pg_pConnect() 函式。

pgsql.max_persistent integer
設定每個處理程序最多保持幾個 Postgres 長期連線。

pgsql.max_links integer
設定每個處理程式最多開幾個 Postgres 連線,包括長期連線。

sybase.allow_persistent boolean
設定是否允許 Sybase 資料庫長期連線 (persistent connections),會影響 sybase_pconnect() 函式。

sybase.max_persistent integer
設定每個處理程序最多保持幾個 Sybase 長期連線。

sybase.max_links integer
設定每個處理程式最多開幾個 Sybase 連線,包括長期連線。

sybct.allow_persistent boolean
設定是否允許 Sybase-CT 資料庫長期連線 (persistent connections),內定值是開啟的。

sybct.max_persistent integer
設定每個處理程序最多保持幾個 Sybase-CT 長期連線。內定值為 -1 表示無限制。

sybct.max_links integer
設定每個處理程式最多開幾個 Sybase-CT 連線,包括長期連線。內定值為 -1,表示沒有限制。

sybct.min_server_severity integer
設定 Sybase-CT 伺服器錯誤報告的最少筆數。內定值為 10。

sybct.min_client_severity integer
設定 Sybase-CT 客戶端錯誤報告的最少筆數。內定值為 10。

sybct.login_timeout integer
設定 Sybase-CT 最久可以使用的登入時間。內定值為 1 分鐘。

sybct.timeout integer
設定 Sybase-CT 的 query 操作時間限制。內定值為無限制。

sybct.hostname string
設定 Sybase-CT 可連線機器名稱。內定值不設限

ifx.allow_persistent boolean
設定是否允許 Informix 資料庫長期連線 (persistent connections),會影響 ifx_pconnect() 函式。

ifx.max_persistent integer
設定每個處理程序最多保持幾個 Informix 長期連線。

ifx.max_links integer
設定每個處理程式最多開幾個 Informix 連線,包括長期連線。

ifx.default_host string
設定 Informix 內定連線的伺服器名稱,供 ifx_connect() 或 ifx_pconnect() 函式使用。

ifx.default_user string
設定 Informix 內定連線的使用者帳號,供 ifx_connect() 或 ifx_pconnect() 函式使用。

ifx.default_password string
設定 Informix 內定連線的使用者密碼,供 ifx_connect() 或 ifx_pconnect() 函式使用。

ifx.blobinfile boolean
設定 Informix 長位元物件模式,0 表在記憶體;1 表在檔案中。亦可以在 PHP 程式中使用 ifx_blobinfile_mode() 函式來修改。

ifx.textasvarchar boolean
設定 Informix 文字模式內定值,0 表傳回 blob 的代碼;1 表傳回 varchar 字串。亦可在 PHP 程式中使用 ifx_textasvarchar() 函式來修改設定。

ifx.byteasvarchar boolean
設定 Informix 位元組模式內定值,0 表傳回 blob 的代碼;1 表傳回 varchar 字串。亦可在 PHP 程式中使用 ifx_byteasvarchar() 來修改設定。

ifx.charasvarchar boolean
設定 Informix 傳回字串的字尾空格是否要自動去除。

ifx.nullformat boolean
設定 NULL 欄位的傳回方式,true 表示傳回字串 NULL,false 表格傳回字串 ""。亦可在 PHP 程式中以 ifx_nullformat() 修改。

bcmath.scale integer
設定 BC 高精確度函式庫的小數點位數。

browscap string
設定瀏覽器的開檔能力名。

uodbc.default_db string
設定 ODBC 內定連線的資料庫名稱,供 odbc_connect() 或 odbc_pconnect() 函式使用。

uodbc.default_user string
設定 ODBC 內定連線的使用者帳號,供 odbc_connect() 或 odbc_pconnect() 函式使用。

uodbc.default_pw string
設定 ODBC 內定連線的使用者密碼,供 odbc_connect() 或 odbc_pconnect() 函式使用。

uodbc.allow_persistent boolean
設定是否允許 ODBC 資料庫長期連線 (persistent connections),會影響 odbc_pconnect() 函式。

uodbc.max_persistent integer
設定每個處理程序最多保持幾個 ODBC 長期連線。

uodbc.max_links integer
設定每個處理程式最多開幾個 ODBC 連線,包括長期連線。
以下和 session 有關的設定值,都在 PHP 4.x 以上的版本方支援。在 php.ini 的設定檔中。


session.save_handler
定義 session 儲存資料的檔案名稱。內定值為 files。

session.save_path
定義 session 儲存資料的檔案路徑。內定值為 /tmp。

session.name
設定 session 所使用的 cookie 名稱。內定值為 PHPSESSID。

session.auto_start
設定 session 是否自動開啟。內定值為 0 (否)。

session.lifetime
設定 cookie 送到瀏覽器後的保存時間,單位為秒。內定值為 0,表示直到瀏覽器關閉。

session.serialize_handler
定義連續/解連續資料的標頭,本功能只有 WDDX 模組或 PHP 內部使用。內定值為 php。

session.gc_probability
設定每筆要求回應時的廢物蒐集 (gc, garbage collection) 處理機率。內定值為 1。

session.gc_maxlifetime
設定廢物被清除前的存活秒數。

session.extern_referer_check
決定參照到客戶端的 Session 代碼是否要刪除。有時在安全或其它考量時,會設定不刪除。內定值為 0。

session.entropy_file
設定 session 代碼建立時,使用外部高熵值資源或檔案來建立,例如 UNIX 系統上的 /dev/random 或 /dev/urandom。

session.entropy_length
設定 session 從高熵值資源讀取的位元組數。內定值為 0。

session.use_cookies
設定是否要將 session 變成 cookie 存在使用者端。內定值為 1,表是開啟本功能。