|
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,表是開啟本功能。
|