php安全模式详细介绍

网友投稿 271 2022-08-24

php安全模式详细介绍

php安全模式:safe_mode=on|off启用safe_mode指令将对在共享环境中使用PHP时可能有危险的语言特性有所限制。可以将safe_mode是指为布尔值on来启用,或者设置为 off禁用。它会比较执行脚本UID(用户ID)和脚本尝试访问的文件的UID,以此作为限制机制的基础。如果UID相同,则执行脚本;否则,脚本失败。具体地,当启用安全模式时,一些限制将生效。1、所有输入输出函数(例如fopen()、file()和require())的适用会受到限制,只能用于与调用这些函数的脚本有相同拥有者的文件。例如,假定启用了安全模式,如果Mary拥有的脚本调用fopen(),尝试打开由Jonhn拥有的一个文件,则将失败。但是,如果Mary不仅拥有调用 fopen()的脚本,还拥有fopen()所调用的文件,就会成功。2、如果试图通过函数popen()、system()或exec()等执行脚本,只有当脚本位于safe_mode_exec_dir配置指令指定的目录才可能。3、HTTP验证得到进一步加强,因为验证脚本用于者的UID划入验证领域范围内。此外,当启用安全模式时,不会设置PHP_AUTH。4、如果适用MySQL数据库服务器,链接MySQL服务器所用的用户名必须与调用mysql_connect()的文件拥有者用户名相同。安全模式和禁用的函数下面是启用safe_mode指令时受影响的函数、变量及配置指令的完整列表:apache_request_headers() backticks()和反引号操作符 chdir()chgrp()     chmode()    chown()copy()     dbase_open()    dbmopen()dl()     exec()     filepro()filepro_retrieve()   filepro_rowcount()   fopen()header()    highlight_file()   ifx_*ingres_*    link()     mail()max_execution_time()   mkdir()     move_uploaded_file()mysql_*     parse_ini_file()   passthru()pg_lo_import()    popen()     posix_mkfifo()putenv()    rename()    zmdir()set_time_limit()   shell_exec()    show_source()symlink()    system()    touch()

另外,由于启用了安全模式后,由于会对比文件的拥有者和文件的执行者是否是一个人,所以会减慢执行效率。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:深入浅出 iOS 之多线程 NSThread
下一篇:调研了39个标杆商场,母亲节营销为何被如此低估?(母亲节营销话题)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~