• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

PHP配置open_basedir

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

 在 Apache 下,也可以配置 PHP 来实现各站点间的相互独立运行,虽然不能详细控制以某个用户运行某个站点,但至少不会再出现整个服务器被拿下的局面。

       通过配置 PHP 的 open_basedir 即可以实现该控制,这个配置在 IIS 下也有用,但这里只讲 Apache 下的配置。

       open_basedir 可将用户访问文件的活动范围限制在指定的区域,通常是其家目录的路径,也可用符号 "." 来代表当前目录。
       open_basedir 也可以同时设置多个目录,在 Windows 中用分号分隔目录,在任何其它系统中用冒号分隔目录。
       当其作用于 Apache 模块时,父目录中的 open_basedir 路径自动被继承。

有三种方法可以在 Apache 中为指定的用户、站点做独立的设置。
以下以Linux系统下的配置为例。

 

 

方法一:在 php.ini 里配置
【例】open_basedir = .:/tmp/

方法二:在 Apache 配置的 VirtualHost 里设置
【例】php_admin_value open_basedir .:/tmp/
【例】php_admin_value open_basedir /usr/local/apache/htdocs/
设置多个目录可以参考如下:
【例】php_admin_value open_basedir /var/www/html/:/var/tmp/

方法三:在 Apache 配置的 Direcotry 里设置
【例】php_admin_value open_basedir .:/tmp/
【例】php_admin_value open_basedir /usr/local/apache/htdocs/
设置多个目录可以参考如下:
【例】php_admin_value open_basedir /usr/local/apache/htdocs/:/tmp/

 

A、方法二的优先级高于方法一,也就是说方法二会覆盖方法一;方法三的优先级高于方法二,也就是说方法三会覆盖方法二;
B、配置目录里加了“/tmp/”是因为 php 默认的临时文件(如上传的文件、session 等)会放在该目录,所以一般需要添加该目录,否则部分功能将无法使用;
C、配置目录里加了“.”是指运行 php 文件的当前目录,这样做可以避免每个站点一个一个设置;
D、如果站点还使用了站点目录外的文件,需要单独在对应 VirtualHost 设置该目录;

 

       在 php.ini 中设置,所有站点都会继承 php.ini 的 open_basedir 设置值,这样可以避免逐个站点设置,有多个站点的时候,就不用一个个设置那么麻烦了。
       例如,可以在 php.ini 中设置 open_basedir = .:/tmp/,这个设置表示允许访问当前目录(即 PHP 脚本文件所在之目录)和 /tmp/ 目录。
       如 果在 VirtualHost 中设置了 open_basedir 之后,这个站点就不会再自动继承 php.ini 中的 open_basedir 设置值了,这就难以达到灵活的配置措施,所以建议您不要在 VirtualHost 中设置此项限制。

 

       请注意:若在 php.ini 所设置的上传文件临时目录为 /tmp/,那么设置 open_basedir 时就必须包含 /tmp/,否则会导致上传失败。
       新版 php 则会提示 "open_basedir restriction in effect" 警告信息,但 move_uploaded_file() 函数仍然可以成功取出 /tmp/ 目录下的上传文件,不知道这是漏洞还是新功能。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
PHP做猜数字游戏发布时间:2022-07-10
下一篇:
PHP将Excel导入数据库及数据库数据导出至Excel的方法发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap