问题是php 5.4的上传进度功能似乎不起作用。无论我做什么,都不会填充会话变量。
ini_get("session.upload_progress.name")
到目前为止,在Debian下没有成功使用dotdeb php 5.4.14和apache2与php5模块。
我还检查了apc rfc1867钩子。只是不起作用。与uploadprogress扩展相同。有什么想法吗?
使用的示例
for uploadprogress: http://www.ultramegatech.com/2010/10/create-an-upload-progress-bar-with-php-and-jquery/
表示apc: http://blog.famillecollet.com/post/2011/01/12/File-upload-progress-in-PHP-with-APC
for php 5.4: https://github.com/chemicaloliver/PHP-5.4-Upload-Progress-Example
php 5.4 inline(上传开始后,只是从另一个标签调用同一个文件......):
upload.php的:
<?
session_start();
var_dump($_SESSION[ ini_get("session.upload_progress.name") . "123"]);
?>
<form action="upload.php" method="POST" enctype="multipart/form-data">
<input type="hidden" name="<?php echo ini_get("session.upload_progress.name"); ?>" value="123" />
<input type="file" name="file1" />
<input type="file" name="file2" />
<input type="submit" />
</form>
答案 0 :(得分:1)
天啊,nginx是罪魁祸首。如果它用作代理,它首先存储整个上载,当整个文件到达时,将其发送到Apache或您使用的任何其他服务器。因此没有上传进度。
答案 1 :(得分:0)
nginx 1.7.11现在有一个关闭上传缓冲的选项:
功能:&#34; proxy_request_buffering&#34;,&#34; fastcgi_request_buffering&#34;, &#34; scgi_request_buffering&#34;,&#34; uwsgi_request_buffering&#34;指令。
http://nginx.org/en/docs/http/ngx_http_proxy_module.html#proxy_request_buffering http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html#fastcgi_request_buffering
并使用此选项上传进度,同时使用它!