
Apache与PHP内网环境视频上传失败问题及解决方案
在Apache和PHP搭建的内网环境中,视频上传经常遭遇失败,即使已调整php.ini中的upload_max_filesize和post_max_size参数。本文将分析一个案例,该案例中部分MP4视频上传失败并返回connection_reset错误,且问题仅限于内网环境。本地和外网环境上传正常。
问题并非后端PHP代码问题,因为代码仅验证文件是否上传成功,这表明问题可能出在文件上传至PHP处理之前的网络连接或Apache服务器端。
解决方案:
立即学习“PHP免费学习笔记(深入)”;
解决此问题需要检查并调整Apache和PHP的配置。
首先,修改Apache配置文件,设置LimitRequestBody参数,例如:LimitRequestBody 10240000 (限制请求体大小为10MB)。此参数限制Apache接收请求体数据的最大值,超过此值则拒绝请求。
其次,仔细检查并调整php.ini中的以下参数:
upload_max_filesize = 100M: 允许上传文件最大值。post_max_size = 100M: PHP通过POST接收数据的最大值。max_execution_time = 600: 每个PHP页面运行的最大时间(秒)。max_input_time = 600: 每个PHP页面接收数据所需的最大时间(秒)。memory_limit = 128M: 每个PHP页面使用的最大内存。这些参数需根据实际情况调整,确保足够大以支持大文件上传。 即使设置了这些参数,网络上传速度过慢仍可能导致失败。max_execution_time和max_input_time参数尤其重要,因为大文件上传耗时较长,时间限制过短会导致上传中断。
通过调整Apache的LimitRequestBody和php.ini中的上述参数,通常可以解决内网环境下部分视频上传失败的问题。如果问题依然存在,则需进一步排查网络配置、防火墙设置等其他因素。
以上就是Apache+PHP内网环境下视频上传失败,如何排查解决?的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号