PHP.ini效能優化

y0umer發表於2011-03-10

程式碼:

  ctrl+y查詢:disable_functions

  找到後在=後面新增

  (這裡都是禁止在php裡面執行的函式)程式碼:

  複製內容到剪貼簿

  exec,system,passthru,error_log,ini_alter,dl,openlog,syslog,readlink,

  symlink,link,leak,fsockopen,proc_open,popepassthru,chroot,scandir,

  chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,popen

  上面內容請放到一行。因為保持帖子的整體效果作了換行

  一般後臺只用加:

  複製內容到剪貼簿

  disable_functions = system,passthru,shell_exec,com,exec,shell

  查詢:display_errors

  如果是On的話改成Off

  查詢:magic_quotes_gpc

  如果是Off的話改成On

  查詢:register_globals

  如果是On的話改成Off

  查詢:open_basedir

  後面增加

  /www/:/tmp/

  這裡是限制php可以訪問的目錄,後面一定要加上/,否則如果有/wwwabcd這個目錄也會被訪問得到

  多個目錄用英文:分隔。如果不新增/tmp/的話Discuz!的上傳功能就無法使用

  注意:以上內容在php.ini的開頭會有相關設定的提示,請按ctrl+x查詢下一個,不要直接在上面修改

  ——————————

  對php.ini優化

  GD庫的支援

  ;extension=php_gd2.dll

  將前面的冒號去掉,

  output_buffering = Off

  輸出快取允許你甚至在輸出正文內容之後傳送 header(標頭,包括cookies)行
其代價是輸出層減慢一點點速度。你可以使用輸出快取在執行時開啟輸出快取, 或者在這裡將指示設為 On 而使得所有檔案的輸出快取開啟。

  output_handler = ; 你可以重定向你的指令碼的所有輸出到一個函式,

  那樣做可能對處理或以日誌記錄它有用。

  例如若你將這個output_handler 設為ob_gzhandler, 則輸出會被透明地為支援gzip或deflate編碼的瀏覽器壓縮。

  設一個輸出處理器自動地開啟輸出緩衝。

  找到這個

  output_buffering = Off

  修改為

  On

  注意,不要設定數值,只需要設定為On即可。

  相應的,你還可以在你的discuz後臺,開啟gzip支援,也是優化的一項內容。

  有些朋友為了安全,還啟用了php的安全模式,這個也是一辦法

  另外有些朋友需要使用全域性變數和MAGIC,這是一些php程式的必備條件,discuz2.0也需要

  可以開啟,不過安全效能將降低,方法很簡單。

  register_globals = Off ;

  將其修改為On即可.

  一些朋友經常反映無法上傳較大的檔案或者後臺備份資料經常超時

  max_execution_time = 30 ; 這個是每個指令碼執行的最長時間,可以自己修改加長,單位秒

  max_input_time = 60 ; 這是每個指令碼可以消耗的時間,單位也是秒

  memory_limit = 8M ; 這個是指令碼執行最大消耗的記憶體,也可以自己加大

  upload_max_filesize = 2M ; 上載檔案的最大許可大小 ,自己改吧,一些圖片論壇需要這個更大的值

  如果:

  php報錯顯示PHP has encountered an Access Violation at XXXXXX解決辦法

  很多人說,是php版本的問題,其實不然,可以從四個地方來看這個問題

  1,是否zend所需的dll檔案所在目錄給的許可權不夠,必須有讀取和執行的許可權

  2,是否使用的2003,設定過應用池,比如池中限制了什麼什麼,調整一下再試試看,是否好了,呵呵

  3,php.ini有兩個地方沒有設定,而且一些程式必須用到的

  將;upload_tmp_dir該行的註釋符,使該行在php.ini文件中起作用。

  upload_tmp_dir是用來定義上傳檔案存放的臨時路徑,在這裡你還可以給其定義一個絕對路徑,

  例如:upload_tmp_dir = d:upload  當然,此時你的d:upload目錄必須有讀寫許可權。

  這裡我設定為

  upload_tmp_dir = c:/temp

  出現這樣的錯誤語句一般是因為你的php.ini中關於session.save_path一項沒有設定好,

  解決的方法是將session.save_path和session.cookie_path 設定置為

  session.save_path = c:/temp

  session.cookie_path = c:/temp(我沒有修改這項,我發現修改後的驗證瑪不能用)

  然後在c:/目錄下建立一個temp目錄

 


相關文章