php.ini中的常用配置詳解

來源:互聯網
上載者:User
本文主要和大家分享php.ini中的常用配置詳解,主要以文字和代碼的形式和大家分享,希望能協助到大家。

資源限制

max_execution_time integer
  • 這設定了指令碼被解析器中止之前允許的最大執行時間,單位秒。 這有助於防止寫得不好的指令碼佔盡伺服器資源。 預設設定為 30。 從命令列運行 PHP 時,預設設定為 0

  • max_execution_time 僅僅隻影響指令碼本身啟動並執行時間。任何其它花費在指令碼運行之外的時間,諸如用函數 system() 對系統的調用、sleep() 函數的使用、資料庫查詢、檔案上傳等,在計算指令碼啟動並執行最大時間時都不包括在內。

  • 最大執行時間不會影響系統調用和系統操作等。在 安全模式 下你不能通過 ini_set() 來修改此設定。唯一的解決方案是關閉安全模式或者在 php.ini 中修改時間限制。

max_input_time integer

指令碼解析輸入資料(類似 POST 和 GET)允許的最大時間,單位是秒。 它從接收所有資料到開始執行指令碼進行測量的。

memory_limit integer

指令碼可能消耗的最大記憶體量(預設 128MB)

資料處理

post_max_size intager

允許的POST資料最大位元組長度。此設定也影響到檔案上傳。如果POST資料超出限制,那麼$_POST$_FILES將會為空白。要上傳大檔案,該值必須大於upload_max_filesize指令的值。如果啟用了記憶體限制,那麼該值應當小於memory_limit指令的值。

路徑設定

include_path string

指定一組目錄用於require(), include(), fopen_with_path()函數尋找檔案。格式和系統的PATH環境變數類似(UNIX下用冒號分隔,Windows下用分號分隔):UNIX: "/path1:/path2",Windows: "\path1;\path2"。在包含路徑中使用’.’可以允許相對路徑,它代表目前的目錄。

extension_dir string

存放擴充庫(模組)的目錄,也就是PHP用來尋找動態擴充模組的目錄。

檔案上傳

file_uploads boolean or integer

是否允許HTTP檔案上傳。預設值為On允許HTTP檔案上傳,此選項不能設定為Off。

upload_tmp_dir string

檔案上傳時存放檔案的臨時目錄(必須是PHP進程使用者可寫的目錄)。如果未指定則PHP使用系統預設的臨時目錄。

upload_max_filesize integer

允許上傳的檔案的最大尺寸。

max_file_uploads integer

允許同時上傳的檔案的最大數量。 從PHP 5.3.4開始,上傳欄位在提交時保持空白不計入此限制。

Fopen 封裝

allow_url_fopen boolean

本選項啟用了 URL 形式fopen 封裝協議使得可以存取 URL 對象例如檔案。預設的封裝協議提供用 ftp 和 http協議來訪問遠程檔案,一些擴充庫例如 zlib 可能會註冊更多的封裝協議。

  • Note:出於安全性考慮,此選項只能在 php.ini 中設定。

allow_url_include boolean

此選項允許有以下功能使用URL識別的fopen封裝:包括,include,include_once,require,require_once。此設定要求allow_url_fopen選項要開啟

default_socket_timeout integer

基於 socket 的流的預設逾時時間(秒)。

日期

date.timezone string

定義日期函數使用的預設時區

session

session.use_strict_mode boolean

session.use_strict_mode指定模組是否將使用嚴格的會話ID模式。 如果啟用此模式,模組不接受未初始化的會話ID。 如果從瀏覽器發送未初始化的會話ID,則會將新的會話ID發送到瀏覽器。 應用程式通過strict 模式的會話採用保護會話固定。 預設為0(禁用)。

session.use_cookies boolean

session.use_cookies 指定是否在用戶端用 cookie 來存放會話 ID。預設為 1(啟用)。

session.cookie_secure boolean

session.cookie_secure 指定是否僅通過安全連線發送 cookie。預設為 off

session.use_only_cookies boolean

session.use_only_cookies 指定是否在用戶端僅僅使用 cookie 來存放會話 ID。啟用此設定可以防止有關通過 URL 傳遞會話 ID 的攻擊。此設定是 PHP 4.3.0 添加的。自PHP 5.3.0開始,預設值改為1(啟用)

session.name string

session.name 指定會話名以用做 cookie 的名字。只能由字母數字組成,預設為 PHPSESSID

session.auto_start boolean

session.auto_start 指定會話模組是否在請求開始時自動啟動一個會話。預設為 0(不啟動)

session.serialize_handler string

session.serialize_handler 定義用來序列化/解序列化的處理器名字。 當前支援 PHP 序列化格式 (名為php_serialize)、 PHP PHP 內部格式 (名為 php 及 php_binary) 和 WDDX (名為 wddx)。 如果 PHP 編譯時間加入了 WDDX 支援,則只能用 WDDX。 自 PHP 5.5.4 起可以使用 php_serialize。php_serialize 在內部簡單地直接使用 serialize/unserialize 函數,並且不會有 php 和 php_binary 所具有的限制。 使用較舊的序列化處理器導致 $_SESSION 的索引既不能是數字也不能包含特殊字元(| and !)。 使用 php_serialize 避免指令碼退出時,數字及特殊字元索引導致出錯。 預設使用 php

session.gc_probability integer

session.gc_probabilitysession.gc_pisor 合起來用來管理 gc(garbag collection 記憶體回收)進程啟動的機率。預設為 1

session.gc_pisor integer

session.gc_pisorsession.gc_probability 合起來定義了在每個會話初始化時啟動gc(garbage collection 記憶體回收)進程的機率。此機率用 gc_probability/gc_pisor計算得來。例如 1/100 意味著在每個請求中有 1% 的機率啟動 gc 進程。 將此值增加到1000會給你0.1%的幾率gc將運行任何給出的請求。 對於大批量生產伺服器,這是一個更有效方法。

session.gc_maxlifetime integer

session.gc_maxlifetime integer 指定過了多少秒之後資料就會被視為“垃圾”並被清除。 垃圾搜集可能會在session 啟動的時候開始( 取決於session.gc_probabilitysession.gc_pisor)。

  • Note:如果不同的指令碼具有不同的 session.gc_maxlifetime數值但是共用了同一個地方儲存會話資料,則具有最小數值的指令碼會清理資料。此情況下,與 session.save_path 一起使用本指令。

詳情請參考:http://www.cnblogs.com/cuchadanfan/p/6163970.html

資源限制

max_execution_time integer
  • 這設定了指令碼被解析器中止之前允許的最大執行時間,單位秒。 這有助於防止寫得不好的指令碼佔盡伺服器資源。 預設設定為 30。 從命令列運行 PHP 時,預設設定為 0

  • max_execution_time 僅僅隻影響指令碼本身啟動並執行時間。任何其它花費在指令碼運行之外的時間,諸如用函數 system() 對系統的調用、sleep() 函數的使用、資料庫查詢、檔案上傳等,在計算指令碼啟動並執行最大時間時都不包括在內。

  • 最大執行時間不會影響系統調用和系統操作等。在 安全模式 下你不能通過 ini_set() 來修改此設定。唯一的解決方案是關閉安全模式或者在 php.ini 中修改時間限制。

max_input_time integer

指令碼解析輸入資料(類似 POST 和 GET)允許的最大時間,單位是秒。 它從接收所有資料到開始執行指令碼進行測量的。

memory_limit integer

指令碼可能消耗的最大記憶體量(預設 128MB)

資料處理

post_max_size intager

允許的POST資料最大位元組長度。此設定也影響到檔案上傳。如果POST資料超出限制,那麼$_POST$_FILES將會為空白。要上傳大檔案,該值必須大於upload_max_filesize指令的值。如果啟用了記憶體限制,那麼該值應當小於memory_limit指令的值。

路徑設定

include_path string

指定一組目錄用於require(), include(), fopen_with_path()函數尋找檔案。格式和系統的PATH環境變數類似(UNIX下用冒號分隔,Windows下用分號分隔):UNIX: "/path1:/path2",Windows: "\path1;\path2"。在包含路徑中使用’.’可以允許相對路徑,它代表目前的目錄。

extension_dir string

存放擴充庫(模組)的目錄,也就是PHP用來尋找動態擴充模組的目錄。

檔案上傳

file_uploads boolean or integer

是否允許HTTP檔案上傳。預設值為On允許HTTP檔案上傳,此選項不能設定為Off。

upload_tmp_dir string

檔案上傳時存放檔案的臨時目錄(必須是PHP進程使用者可寫的目錄)。如果未指定則PHP使用系統預設的臨時目錄。

upload_max_filesize integer

允許上傳的檔案的最大尺寸。

max_file_uploads integer

允許同時上傳的檔案的最大數量。 從PHP 5.3.4開始,上傳欄位在提交時保持空白不計入此限制。

Fopen 封裝

allow_url_fopen boolean

本選項啟用了 URL 形式fopen 封裝協議使得可以存取 URL 對象例如檔案。預設的封裝協議提供用 ftp 和 http協議來訪問遠程檔案,一些擴充庫例如 zlib 可能會註冊更多的封裝協議。

  • Note:出於安全性考慮,此選項只能在 php.ini 中設定。

allow_url_include boolean

此選項允許有以下功能使用URL識別的fopen封裝:包括,include,include_once,require,require_once。此設定要求allow_url_fopen選項要開啟

default_socket_timeout integer

基於 socket 的流的預設逾時時間(秒)。

日期

date.timezone string

定義日期函數使用的預設時區

session

session.use_strict_mode boolean

session.use_strict_mode指定模組是否將使用嚴格的會話ID模式。 如果啟用此模式,模組不接受未初始化的會話ID。 如果從瀏覽器發送未初始化的會話ID,則會將新的會話ID發送到瀏覽器。 應用程式通過strict 模式的會話採用保護會話固定。 預設為0(禁用)。

session.use_cookies boolean

session.use_cookies 指定是否在用戶端用 cookie 來存放會話 ID。預設為 1(啟用)。

session.cookie_secure boolean

session.cookie_secure 指定是否僅通過安全連線發送 cookie。預設為 off

session.use_only_cookies boolean

session.use_only_cookies 指定是否在用戶端僅僅使用 cookie 來存放會話 ID。啟用此設定可以防止有關通過 URL 傳遞會話 ID 的攻擊。此設定是 PHP 4.3.0 添加的。自PHP 5.3.0開始,預設值改為1(啟用)

session.name string

session.name 指定會話名以用做 cookie 的名字。只能由字母數字組成,預設為 PHPSESSID

session.auto_start boolean

session.auto_start 指定會話模組是否在請求開始時自動啟動一個會話。預設為 0(不啟動)

session.serialize_handler string

session.serialize_handler 定義用來序列化/解序列化的處理器名字。 當前支援 PHP 序列化格式 (名為php_serialize)、 PHP PHP 內部格式 (名為 php 及 php_binary) 和 WDDX (名為 wddx)。 如果 PHP 編譯時間加入了 WDDX 支援,則只能用 WDDX。 自 PHP 5.5.4 起可以使用 php_serialize。php_serialize 在內部簡單地直接使用 serialize/unserialize 函數,並且不會有 php 和 php_binary 所具有的限制。 使用較舊的序列化處理器導致 $_SESSION 的索引既不能是數字也不能包含特殊字元(| and !)。 使用 php_serialize 避免指令碼退出時,數字及特殊字元索引導致出錯。 預設使用 php

session.gc_probability integer

session.gc_probabilitysession.gc_pisor 合起來用來管理 gc(garbag collection 記憶體回收)進程啟動的機率。預設為 1

session.gc_pisor integer

session.gc_pisorsession.gc_probability 合起來定義了在每個會話初始化時啟動gc(garbage collection 記憶體回收)進程的機率。此機率用 gc_probability/gc_pisor計算得來。例如 1/100 意味著在每個請求中有 1% 的機率啟動 gc 進程。 將此值增加到1000會給你0.1%的幾率gc將運行任何給出的請求。 對於大批量生產伺服器,這是一個更有效方法。

session.gc_maxlifetime integer

session.gc_maxlifetime integer 指定過了多少秒之後資料就會被視為“垃圾”並被清除。 垃圾搜集可能會在session 啟動的時候開始( 取決於session.gc_probabilitysession.gc_pisor)。

  • Note:如果不同的指令碼具有不同的 session.gc_maxlifetime數值但是共用了同一個地方儲存會話資料,則具有最小數值的指令碼會清理資料。此情況下,與 session.save_path 一起使用本指令。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.