解決nginx+php-fpm沒法上傳文件問題

解決辦法 php

  location ~ .php$ { html

  root /var/www/html/public; 服務器

  client_max_body_size 50M; post

  client_body_temp_path /tmp; 測試

  fastcgi_pass 127.0.0.1:9000; 大數據

  fastcgi_index index.php; htm

  fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; 進程

  include fastcgi_params; ip

  } 內存

  附:不要找了,網上說的不少我都試過!一直提示Firebug 達到了 Post 請求大小限制

  修改PHP.ini中post_max_size upload_max_filesize max_execution_time max_input_time

  打開php.ini文件,修改完畢後重啓服務器。測試下上傳文件。。。。(嘻嘻,是否是傳上了很大的文件?)

  一、文件上傳時存放文件的臨時目錄。必須是 PHP 進程全部者用戶可寫的目錄。若是未指定則 PHP 使用系統默認值php.ini文件中upload_tmp_dir用來講明PHP上傳的文件放置的臨時目錄。

  要想上傳文件,得保證服務器沒有關閉臨時文件和有對文件夾的寫權限

  二、max_execution_time

  變量max_execution_time設置了在強制終止腳本前PHP等待腳本執行完畢的時間,此時間以秒計算。當腳本進入了一個無限循環狀態 時此變量很是有用。然而,當存在一個須要很長時間完成的合法活動時(例如上傳大型文件),這項功能也會致使操做失敗。在這樣的狀況下必須考慮將此變量值增 加,以免PHP在腳本正在執行某些重要過程的時候將腳本關閉。

  修改成:max_execution_time =800

  三、file_uploads = On(原來問開就不用設置了)

  四、upload_max_filesize =2M修改成800M

  五、同表單提交相關的一個變量是post_max_size,它將控制在採用POST方法進行一次表單提交中PHP所可以接收的最大數據量。彷佛不大 可能須要將默認的8 MB改得更大。相反,應當適當將其降到更爲實際的數值。但若是但願使用PHP文件上傳功能,則須要將此值改成比upload_max_filesize還 要大。

  也修改成:post_max_size =900M

  六、max_input_time

  此變量能夠以秒爲單位對經過POST、GET以及PUT方式接收數據時間進行限制。若是應用程序所運行環境處在低速鏈路上,則須要增長此值以適應接收數據所需的更多時間.

  修改成:max_input_time =900

  七、memory_limit =10M

  爲了不正在運行的腳本大量使用系統可用內存,PHP容許定義內存使用限額。經過memory_limit變量來指定單個腳本程序可使用的最大內存容量

  變量memory_limit的值(不要超出服務器內寸最大值)

  修改成:memory_limit =128M

相關文章
相關標籤/搜索