首 页 网络编程
网页制作 图形图象 操作系统 冲浪宝典
软件教学 认证考试

网络安全 网络办公 行业资讯 评测对比
您当前位置:站长天空 -> 图形图象
教您如何应用PHP开发出安全的应用程序 (3)-PHP教程,PHP应用
作者:网友供稿 点击:7
推荐
西部数码-全国虚拟主机10强!20余项虚拟主机管理功能,全国领先!第6代双线路虚拟主机,南北访问畅通无阻!可在线rar解压,自动数据恢复设置虚拟目录等.免费赠送访问统计,企业邮局.Cn域名注册10元/年,自助建站480元起,免费试用7天,满意再付款!P4主机租用799元/月.月付免压金
站内搜索
文章页数:[1] 
二、 安全使用php

1、安装安全模块

php 的安全模式是为了试图解决共享服务器(shared-server)安全问题而设立的。在结构上,试图在 php 层上解决这个问题是不合理的,但修改 web 服务器层和操作系统层显得非常不现实。因此许多人,特别是 isp,目前使用安全模式。

表-1.安全模式配置指令


名称 默认值 类型
safe_mode "0" 布尔型
safe_mode_gid "0" 布尔型
safe_mode_include_dir null 字符串
safe_mode_exec_dir "" 字符串
safe_mode_allowed_env_vars php_ 字符串
safe_mode_protected_env_vars ld_library_path 字符串
disable_functions "" 字符串
disable_classes "" 字符串
open_basedir null 字符串


以下是该配置选项的简要解释。

(1)safe_mode boolean

是否启用 php 的安全模式。

(2)safe_mode_gid

默认情况下,安全模式在打开文件时会做 uid 比较检查。如果你想将其放宽到 gid 比较,则打开 safe_mode_gid。是否在文件访问时使用 uid(false)或者 gid(true)来做检查。

(3)safe_mode_include_dir

当从此目录及其子目录(目录必须在 include_path 中或者用完整路径来包含)包含文件时越过 uid/gid 检查。

从 php 4.2.0 开始,本指令可以接受和 include_path 指令类似的风格用分号隔开的路径,而不只是一个目录。

(4)safe_mode_exec_dir

如果 php 使用了安全模式,system() 和其它执行系统程序的函数将拒绝启动不在此目录中的程序。

(5)safe_mode_allowed_env_vars

设置某些环境变量可能是潜在的安全缺口。本指令包含有一个逗号分隔的前缀列表。在安全模式下,用户只能改变那些名字具有在这里提供的前缀的环境变量。默认情况下,用户只能设置以 php_ 开头的环境变量(例如 php_foo = bar)。

(6)safe_mode_protected_env_vars

本指令包含有一个逗号分隔的环境变量的列表,最终用户不能用 putenv() 来改变这些环境变量。甚至在 safe_mode_allowed_env_vars 中设置了允许修改时也不能改变这些变量。

(7)disable_functions

本指令允许你基于安全原因禁止某些函数。接受逗号分隔的函数名列表作为参数。 disable_functions 不受安全模式的影响。 本指令只能设置在 php.ini 中。例如你不能将其设置在 httpd.conf。

(8)disable_classes

本指令可以使你出于安全的理由禁用某些类。用逗号分隔类名。disable_classes 不受安全模式的影响。 本指令只能设置在 php.ini 中。例如你不能将其设置在 httpd.conf。该指令自 php 4.3.2 起可用。

(9)open_basedir

将 php 所能打开的文件限制在指定的目录树,包括文件本身。本指令不受安全模式打开或者关闭的影响。

2、以安全模式运行php

以安全模式运行php是使php脚本安全使用的好方法,特别是在允许用户使用自己开发的php脚本时。使用安全模式会使php在运行函数时检查是否存在安全问题。include、readfile、fopen、file、unlink、rmdir等等:被包含的文件或者该文件所在目录的所有者必须是正在运行的脚本的所有者; exec、system、passthm等:要执行的程序必须位于特定的目录(默认为/usr/local/php/bin)。编译php时可以用- -with-exe-dir选项设定这个值。

mysql_connect:这个函数用可选的用户名连接mysql数据库。在安全模式下,用户名必须是当前被执行的脚本的所有者,或运行httpd的用户名(通常是nobody)。

http authentication:包含http验证代码脚本所有者的用户id(数字型)会自动加到验证域。这样可以防止有人通过抓取密码的程序来欺骗同一个服务器上的http验证脚本。
文章整理:站长天空 网址:http://www.z6688.com/
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

文章页数:[1] 


放大字体显示 缩小字体显示 打印文章 推荐给朋友
热门文章
·通信机房ups供电系统设计方案探讨
·在图片上写字 (C#)-.NET教程,C#语言
·.NET平台下带权限控制的TreeView控件节点生成算法-.NET教程,组件控件开发
·J2ME打包--解决移动平台api 问题-JSP教程,J2EE/EJB/服务器
·Java程序员的存储过程-JSP教程,Java技巧及代码
·如何使用FindControl查找内容页上的某个控件?-ASP教程,组件开发
·jsp页面的例外处理-JSP教程,Jsp/Servlet
·XP 风格的可拖动列、排序的DataGrid的例子-.NET教程,数据库应用
·jasperreport中的demo学习-JSP教程,Java技巧及代码
·锂离子电池碳负极研究新动向
最新文章
·站长如何做好自己的客服中心_站长心得
·windows vista sp1新增创建恢复盘功能_windows vista
·fireworks cs3切片工具的使用简述_fireworks教程
·个人网站到底应该做什么样的广告?_网赚技巧
·不用google adsense的84个赚钱方法_网赚技巧
·新站如何迅速的被收录的技巧绝版_站长心得
·为网站上的图片进行搜索引擎优化的研究_站长心得
·photoshop初学者轻松绘制螺旋漩涡特效_photoshop教程
·网站推广研究之url的优化_站长心得
·初学网站制作须知道什么是静态网页_站长心得
相关主题
  • 教您如何应用PHP开发出安全的应用程序 (8)-PHP教程,PHP应用
  • 教您如何应用PHP开发出安全的应用程序 (7)-PHP教程,PHP应用
  • 教您如何应用PHP开发出安全的应用程序 (6)-PHP教程,PHP应用
  • 教您如何应用PHP开发出安全的应用程序 (5)-PHP教程,PHP应用
  • 教您如何应用PHP开发出安全的应用程序 (2)-PHP教程,PHP应用
  • 西部数码虚拟主机

    友情链接
    CNNIC 西部数码
    万网 自助建站
    虚拟主机 asp空间
    域名注册 域名
    域名申请 主页空间
    论坛空间 网站空间
    国际域名 虚拟空间
    空间租用 DDOS防火墙
    成都主机托管 四川主机托管
    主机租用 服务器租用
    网站目录 自助建站
    虚拟主机 网址大全
    软件下载
    自助链接
    虚拟主机资讯 特价虚拟主机
    版权申明:本站文章均来自网络,如有侵权,请联系我们,我们收到后立即删除,谢谢!
    关于我们:站长天空:专业提供最新的站长资讯、在线教程、虚拟主机权威评测、虚拟主机性能对比、网站制作教程,开发教程,站长工具。包括网页制作教程、冲浪宝典、编程参考、操作系统、软件教学、行业动态等。
    特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有。
    发表评论 打印  刷新     关闭