您好,登錄后才能下訂單哦!
小編給大家分享一下php無法上傳文件的解決方法,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
php無法上傳文件的解決方法:1、查看上傳目錄是否有寫入權限;2、編輯php.ini配置文件,修改【post_max_size= 8M】;3、查看upload_tmp_dir設定的目錄權限。
解決方法:
1、檢查網站目錄的權限。
上傳目錄是否有寫入權限
2、php.ini配置文件
php.ini中影響上傳的有以下幾處:
file_uploads 是否開啟 on 必須開啟
post_max_size= 8M
PHP接受的POST數據最大長度。此設定也影響到文件上傳。要上傳大文件,該值必須大于"upload_max_filesize",如果配置腳本中激活了內存限制,"memory_limit"也會影響文件上傳。
一般說來,"memory_limit"應該比"post_max_size"要大。
upload_max_filesize = 2M
允許上傳的文件的最大尺寸
upload_tmp_dir =C:\\windows\temp
文件上傳時存放文件的臨時目錄,必須是PHP進程用戶可寫的目錄,如果未指定則PHP使用系統默認值。
default_socket_timeout = 60
socket超時,單位是秒
max_execution_time = 30
每個腳本最大允許執行時間, 按秒計。默認為30秒。
這個參數有助于阻止劣質腳本無休止的占用服務器資源。
注: "max_execution_time"僅影響腳本本身的運行時間。
任何其它花費在腳本運行之外的時間,如用system()/sleep()函數的使用、數據庫查詢、文件上傳等都不包括在內。
在安全模式下,你不能用ini_set()在運行時改變這個設置
max_input_time=60
每個腳本接受輸入數據的最大允許時間(POST GET upload),按秒計
memory_limit = 128M
設置腳本最大能申請到的內存空間大小,防止劣質腳本消耗完服務器的內存資源。要使用此指令必須在編譯的時候激活。因此 configure 一行中應該包括:--enable-memory-limit,如果不需要任何內存上的限制,必須將其設為 -1。
自php4.3.2 起,當設置了memory_limit后,memory_get_usage()函數將變為可用
3、upload_tmp_dir 目錄權限
如果php配置沒問題,那問題有可能出在upload_tmp_dir設定的目錄權限問題。加入IIS_WPG除完全控制外的權限,users的讀寫權限,NETWORK SERVER除完全控制外的權限。
4、如果起用了ZEND,看Temp文件夾中是否有
ZendOptimizer.MemoryBase@SYSTEM和ZendOptimizer.MemoryBase@NETWORKSERVICE,如果沒有,就建立它。
5、window guests來賓權限
如果以上都不行,那問題很有可能出在這里了,檢查windows目錄是否禁用guests來賓組,要給windows目錄users組 讀取和執行權限。
以上是php無法上傳文件的解決方法的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。