解决方案:
Php不允许使用网络。将php.ini中allow_url_fopen的值改为allow_url_fopen=Off
如果没有。
;extension=PHP _ sockets . dll(sockets.dll受限)
;忽略_用户_中止=开
在这两项前加一个分号。
但这两项默认是这样设置的。防止有的同志手动打开。
* * * *将“register_globals”设置为“off”
该选项将禁止PHP为用户输入创建全局变量,即如果用户提交表单变量' hello 'PHP将不创建' $ hello '而只创建' HTTP_GET/POST_VARS['hello']'这是PHP中一个极其重要的选项。关闭这个选项会给编程带来很大的不便。
* * *将“safe_mode”设置为“on”(注意:打开此选项后可能无法访问phpmyadmin,原因正在查找中)
当此选项打开时,将添加以下限制:
1.限制可以执行的命令。
2.限制可以使用的功能
3.基于脚本所有权和目标文件所有权的文件访问限制
4.禁止文件上传功能。
这对ISP来说是一个很好的选择,也可以大大提高PHP的安全性。
* *设置“open_basedir”
该选项可以禁止指定目录外的文件操作,有效消除了include()对本地文件或远程文件的攻击,但仍需注意文件上传和会话文件攻击。
* *将“显示错误”设置为“关”,将“记录错误”设置为“开”
该选项禁止错误信息显示在网页中,而是记录在日志文件中,可以有效抵御攻击者对目标脚本中函数的检测。
*将“allow_url_fopen”设置为“off”(重复上述第一步)
这个选项可以禁用远程文件功能,强烈推荐!
然后重启iis。
设置PHP。INI设置为只读,以防止被黑客篡改。修改这个PHP时停止IIS。INI在未来。很安全!
此外,您可以考虑
考虑到服务器PHP的安全性
*如果是独立服务器,可以在php配置文件中修改php.ini,将register_globals=On改为register_globals=Off,然后重启IIS。(由于register_globals设置控制了PHP变量的访问范围,如果打开会造成不必要的安全问题,所以这里强制关闭。如果站长空间不支持,可以用以下方法修改,供站长们参考:)