我在上传大文件(视频)时使用 apc_fetch 显示进度条。
apc_fetch 可以正常处理最大 180mb 的文件。但是对于更大的文件,apc_fetch 在 190Mb 后返回 false。
基本上,如果我上传一个大文件 (250mb),它会显示数据,直到“当前”小于 190mb。当涉及到 190mb 时,它返回 false。没有数据。
我在 php.ini 中的 apc conf
extension=apc.so
apc.rfc1867 = on
apc.max_file_size = 1024M
upload_max_filesize = 1024M
post_max_size = 1025M
apc.shm_size = 512M
apc.rfc1867_freq= 0
关于它的更新: 仍在进行一些测试,我发现 apc_fetch 在 1 小时(60 分钟)后开始返回空。 我设置了这些,但还是一样。
apc.ttl = 0
apc.user_ttl = 0
apc.gc_ttl = 0
我认为问题出在时间上。
最佳答案
您需要将apc.rfc1867_ttl
设置为更大的值。它确定上传跟踪值在 apc 缓存中存在的时间。
默认值为 3600 秒,超过此时间后将不再跟踪上传。这就是为什么你看到它在一个小时后什么也没返回的原因。将其设置为比您预计上传所需的最长时间稍长的值。
关于php - 一段时间后 apc_fetch 返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6078875/