• 欢迎访问MACD实战投资网站,推荐使用最新版谷歌Chrome浏览器访问本网站,关注公众号 丁火甲木庚金 www.macd11.com/subscriptions

(总结)隐藏PHP版本与PHP基本安全设置

原创总结 丁火 15年前 (2010-07-20) 8947次浏览 5个评论

为了安全起见,最好还是将PHP版本隐藏,以避免一些因PHP版本漏洞而引起的攻击。

1、隐藏PHP版本就是隐藏 “X-Powered-By: PHP/5.2.13″ 这个信息。

方法很简单:
编辑php.ini配置文件,修改或加入: expose_php = Off 保存后重新启动Nginx或Apache等相应的Web服务器即可。

[root@bkjz /]# curl -I www.macd11.com
HTTP/1.1 200 OK
Server: nginx
Date: Tue, 20 Jul 2010 05:45:13 GMT
Content-Type: text/html; charset=UTF-8
Connection: keep-alive
Vary: Accept-Encoding

已经彻底隐藏了PHP版本

2、其它几个PHP的基本安全设置
disable_functions = phpinfo,system,exec,shell_exec,passthru,popen,dl,proc_open,popen,curl_exec,curl_multi_exec,parse_ini_file,show_source
#该指令接受一个用逗号分隔的函数名列表,以禁用特定的函数。

display_errors = Off
#是否将错误信息作为输出的一部分显示。在最终发布的web站点上,强烈建议你关掉这个特性,并使用错误日志代替。打开这个特性可能暴露一些安全信息,例如你的web服务上的文件路径、数据库规划或别的信息。

allow_url_fopen = Off
#是否允许打开远程文件,建议关闭,如果网站需要采集功能就打开。

safe_mode = On
#是否启用安全模式。打开时,PHP将检查当前脚本的拥有者是否和被操作的文件的拥有者相同,相同则允许操作,不同则拒绝操作。开启安全模式的前提是你的目录文件权限已完全分配正确。

open_basedir = /var/www/html/ha97:/var/www/html/168pc
#目录权限控制,ha97目录中的php程序就无法访问168pc目录中的内容。反过来也不行。在Linux/UNIX系统中用冒号分隔目录,Windows中用分号分隔目录。

另:彻底隐藏Nginx版本号的安全性与方法

(总结)隐藏Apache版本号的必要性与方法


macd11.com 和 丁火甲木庚金 公众号版权所有丨如未注明 , 均为原创丨转载请注明原文链接。
喜欢 (0)
[sp91@qq.com]
分享 (0)

您必须 登录 才能发表评论!

(5)个小伙伴在吐槽
  1. open_basedir = /var/www/html/ha97:/var/www/html/168pc 我用了这个,出现404页面去了 注释他就能够正常 我的/var/www/html/有两个目录 aaa和bbb 我aaa现在用 nginx也写了80是他 bbb里面空,nginx没解析, 为什么我添加了这句话open_basedir = /var/www/html/aaa:/var/www/html/bbb 我的网站就进行错误页面? nginx.conf server { listen 80; server_name www.***.com; index index.html index.htm index.php; root /usr/local/www;(不明白这个root什么意思) error_page 404 www.***.com/404.index.html
    qweee2010-12-25 18:28
    • 我晕,你nginx里面设置的网站主目录是 /usr/local/www啊,你添加了open_basedir = /var/www/html/aaa:/var/www/html/bbb 请问主目录相同吗?肯定不能访问啊~
  2. 奇怪了,之前设置这个还可以,显示在隐藏不了php版本号。确定expose_php = Off 了。
    郑州seo2013-06-13 09:10
  3. 学习了!!!
  4. 真爱粉
    SHEHUI2018-05-16 09:04