我必須上傳一個帶有34MB的pdf文件。我的網站是在Linux中使用PHP。但我的網站只支持8MB。 (我從phpinfo知道這一點)。我如何增加尺寸?我聽說我們可以通過php.ini更改它。 htaccess的。但我在哪裏得到php.ini?我如何改變尺寸?有沒有人給我一個解決方案?在linux服務器上更改文件上傳大小
回答
有多種設置,可以影響最大文件上傳大小:
PHP_INI_PERDIR:以下設置可以在php.ini,.htaccess或httpd.conf中設置:
upload_max_filesize
上傳文件的最大大小。
post_max_size
設置允許的發佈數據的最大大小。要上傳大文件,該值必須大於upload_max_filesize。如果配置腳本啓用了內存限制,memory_limit也會影響文件上傳。
max_input_time
這設置腳本允許解析輸入數據的最大時間,例如POST,GET和文件上載。
PHP_INI_ALL:以下設置可以在php.ini,htaccess的httpd.conf的設置,或者與ini_set():
max_execution_time
這將設置在秒的最大時間的腳本允許運行在解析器終止之前。如果此限制太低,則在大型文件有時間上傳之前,腳本將終止。
memory_limit
這設置腳本允許分配的最大內存量(以字節爲單位)。如果配置腳本啓用了內存限制,memory_limit也會影響文件上傳。一般來說,memory_limit
應該大於post_max_size
。
POST上傳方法
當通過POST方法上傳文件,你還需要設置MAX_FILE_SIZE
在你的HTML表單。有關詳細信息,請參閱本:
http://www.php.net/manual/en/features.file-upload.post-method.php
共享主機
如果您使用的是託管共享,這是不可能的,你將能夠訪問系統的php.ini文件。但是,您可以在.htaccess中或在每個目錄下的php.ini文件中設置值。一些共享託管服務提供商可能會阻止您這樣做,因此您需要檢查是否屬於這種情況。
.htaccess
下面是一個示例。htaccess文件:
<IfModule mod_php5.c>
php_value upload_max_filesize 70M
php_value post_max_size 80M
php_value memory_limit 90M
php_value max_execution_time 240
php_value max_input_time 240
</IfModule>
每目錄的php.ini
通過以上的設置也可以在每個目錄的php.ini文件改變。同樣,這樣做的能力可能會受到您的主機提供商的限制。有關更多信息,請參見這裏:
http://www.askapache.com/php/custom-phpini-tips-and-tricks.html
多變:
有關PHP_INI_的說明*模式,這表明其中配置指令可以設置,在這裏看到:
http://php.net/manual/en/configuration.changes.modes.php
你可以在.htaccess中做到這一點:
php_value memory_limit 64M
php_value upload_max_filesize 32M
php_value post_max_size 32M
php_value max_execution_time 600
php_value max_input_time 600
或php.ini中(見上變量)
這個文檔有點分散,但'upload_max_filesize','post_max_size'和'max_input_time'不能用'ini_set()'設置。參見[可以設置配置設置的地方](http://php.net/manual/en/configuration.changes.modes.php),[文件上傳](http://www.php.net/manual/en /ini.core.php#ini.sect.file-uploads),[數據處理](http://www.php.net/manual/en/ini.core.php#ini.sect.data-handling)和[運行時配置](http://www.php.net/manual/en/info.configuration.php#info.configuration)以獲取更多信息。 – Mike 2010-06-30 07:41:27
對不起,我編輯我的答案。順便說一句,我會去.htaccess無論如何。 – fabrik 2010-06-30 07:48:02
- 1. php文件大小並上傳到服務器文件夾
- 2. 將大文件上傳到服務器
- 3. 文件上傳:在服務器上
- 4. 在服務器上更改文件後將文件上傳到用戶
- 5. 使用jsftp上傳文件導致服務器上的文件大小爲零
- 6. Rsync更改服務器上的文件
- 7. 更改在服務器上傳的文件的所有者
- 8. 在上傳到服務器之前更改文件的名稱
- 9. 從jmeter上傳時服務器(HDFS)文件大小增加
- 10. 限制服務器上傳文件大小
- 11. ASP上傳文件到服務器並限制大小
- 12. WAMP服務器上傳文件大小不能超過128MB
- 13. 更改圖像大小以保存在PHP服務器上
- 14. 如何在服務器上上傳大視頻文件?
- 15. 使用http PUT上傳的文件在服務器上的大小不正確
- 16. 更改php.ini上的upload_max_filesize後,PHP文件上傳大小有限
- 17. JasperExportManager exportReportToPdfFile在服務器上創建大文件(大小)
- 18. 服務器上的文件上傳
- 19. php:上傳服務器上的文件
- 20. 上傳服務器上的文件
- 21. PHP文件上傳在Linux服務器中不起作用
- 22. 更改燈的上傳最大大小
- 23. 更改上傳文件的最大大小
- 24. web.config中最大文件上傳大小更改
- 25. 更改文件上傳的最大大小 - symfony
- 26. 如何更改最大文件大小上傳?
- 27. 在服務器上上傳文件和計算上傳時間
- 28. Linux上的文件服務器
- 29. 運行Python文件Linux服務器上
- 30. 在Linux上更改Apache Web服務器的文檔根文件夾
* memory \ _limit *不會影響文件上傳的最大大小。 – Gumbo 2010-06-30 07:09:46
@Gumbo:它影響'post_max_size'。看到這些文件在這裏:http://www.php.net/manual/en/ini.core.php#ini.post-max-size我已經更新了答案,使之更清晰。 – Mike 2010-06-30 07:18:49
在網絡服務器級別也可能會設置限制。 – symcbean 2010-06-30 08:31:11