php環境無法上傳的解決辦法

2021-06-12 10:39:55 字數 1524 閱讀 1497

對於dedecms"你沒有選擇上傳檔案",discuz批量上傳顯示成功,但看不到,ecshop**等無法上傳問題,.只要是php的,而且**本身沒有問題.以下都適用

一、 檢查**目錄的許可權。

二、 php.ini配置檔案

php.ini中影響上傳的有以下幾處:

file_uploads 是否開啟 on 必須開啟

是否允許http檔案上傳

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()函式將變為可用

三、upload_tmp_dir目錄許可權

如果php配置沒問題,那問題有可能出在upload_tmp_dir設定的目錄許可權問題。加入iis_wpg除完全控制外的許可權,users的讀寫許可權,network server除完全控制外的許可權。

四、如果起用了zend,看temp資料夾中是否有zendoptimizer.memorybase@system和zendoptimizer.memorybase@networkservice,如果沒有,就建立它。

五、如果以上都不行,那問題很有可能出在這裡了,檢查windows目錄是否禁用guests來賓組,要給windows目錄users組 讀取和執行許可權。

PHP無法上傳大檔案解決辦法記錄

解決方法 php.ini裡查詢 查詢 post max size 改為 post max size 100m 查詢upload max filesize,預設為2m 改為 upload max filesize 100m 解決上傳超時 預設是30秒 改為 max execution time 0 0...

svn 無法上傳 a 檔案的解決辦法

1.在每個使用者主資料夾下有乙個名為.subversion的隱藏資料夾,開啟裡面的config檔案。可以開啟終端,輸出 cd 進入使用者主資料夾,cd subversion vi config 3.取消注釋,把 so so.0 9 a 去掉,當然你也可以根據需要增加或減少你的過濾選項。以上是我在這裡...

大檔案上傳解決辦法

net中默只能上傳小於4m的檔案,大於4m將無法顯示頁面.那麼如何設定來使imputfile能上傳更大的檔案呢,1,環境 window 2003 iis6.0 要首先要修改iis6.0中的asp請求的最大位元組數,預設時為200k 方法 開啟位於 c windows system32 inetsrv...