php.ini中的open_basedir设置和无法上传
昨天上传好了网站,早上来了对服务器进行了加固, 下午开发部的同事调试时却说不能上传图片, 原
来我在php.ini里面限定了脚本用户的目录,linux找不到网站目录下的临时文件导致的。
附上方法:
在php.ini配置文件中,open_basedir可以设置一个目录,限制所有的PHP文件操作都只能在该目录下进行,从而防止用户进入服务器的其他区域。这是一个增进PHP安全的方法。
但是open_basedir的设置,很多时候会使PHP的文件上传功能失效,且常常没有任何提示。究其原因,是因为PHP的文件上传,首先是将文件上传 到一个临时目录里,缺省情况下是系统的临时目录。如果设置了open_basedir,而系统临时目录不在open_basedir设定的目录中,就会出 现无法上传的情况。
解决的办法,一是在php.ini中设置文件上传临时目录参数upload_tmp_dir,而且设定的目录必须处于open_basedir设定目录下;二是直接取消open_basedir设定。
本文出自 传播、沟通、分享,转载时请注明出处及相应链接。
本文永久链接: https://www.nickdd.cn/?p=1657