教你在header中隐藏php的版本信息
前言
在php渲染的网页header信息中,会包含php的版本号信息,比如: X-Powered-by: php/5.3.3,这有些不安全,有些黑客可能采用扫描的方式,批量寻找低版本的php服务器,利用php漏洞(比如hash冲突)来攻击服务器。
php.ini中有一个选项可以控制是否暴露这个信息,那就是:
expose_php = On
默认值是On,改成Off之后,就不会显示php版本信息啦。
或者在php-fpm的pool配置文件中设置:
php_admin_flag[expose_php] = off
总结
以上就是如何在header信息中隐藏php的版本信息的全部内容,希望本文能帮助到有需要的大家,如果有疑问欢迎大家留言讨论。
相关推荐
-
nginx/apache/php隐藏http头部版本信息的实现方法
1.nginx隐藏头部版本信息方法 编辑nginx.conf配置文件,在http{}内增加如下一行 复制代码 代码如下: http { -- server_tokens off; -- } 编辑php-fpm配置文件,fastcgi.conf或fcgi.conf 找到: 复制代码 代码如下: fastcgi_param SERVER_SOFTWARE nginx/$nginx_version; 改为: 复制代码 代码如下: fastcgi_param SER
-
隐藏Nginx或Apache以及PHP的版本号的方法
当黑客入侵一台服务器时,首先会"踩点", 这里的"踩点",指的是了解服务器中运行的一些服务的详细情况,比如说:版本号,当黑客知道相应服务的版本号后,就可以寻找该服务相应版本的一些漏洞来入侵,攻击,所以我们需要隐藏这些版本号来避免一些不必要的问题 我们来测试一下 insoz:~ insoz$ curl -I http://127.0.0.1/phpinfo.php HTTP/1.1 200 OK Server: nginx/1.5.0 Date: Thu, 18 Ju
-
PHP版本如何选择?应该使用哪个版本?
超过75%的网站使用了PHP作为开发语言,wordpress,phpmyadmin和其他一些开源项目的盛行,带来了一大批的长尾用户.然而,他们一般安装之后却很少升级.下图是目前PHP的使用统计. 惊人的是,此图的左半部分表示已经不被支持的PHP版本.PHP 5.2早在2011年1月已经不再维护.这并不意味着你就不能使用它,但是这意味着某些安全更新,你就无法跟进了.一些发行版将尝试修复一些BUG,但你的PHP版本似乎有点乏善可陈,因为,你正在使用的是2006年的过时技术. 该从哪里开始 已经没有人
-
PHP 线程安全与非线程安全版本的区别深入解析
从2000年10月20日发布的第一个Windows版的PHP3.0.17开始的都是线程安全的版本,这是由于与Linux/Unix系统是采用多进程的工作方式不同的是Windows系统是采用多线程的工作方式.如果在IIS下以CGI方式运行PHP会非常慢,这是由于CGI模式是建立在多进程的基础之上的,而非多线程. 一般我们会把PHP配置成以ISAPI的方式来运行,ISAPI是多线程的方式,这样就快多了.但存在一个问题,很多常用的PHP扩展是以Linux/Unix的多进程思想来开发的,这些扩展在ISAP
-
PHP多个版本的分析解释
PHP版本主要分三支:PHP4/PHP5/PHP6其中,PHP4由于太古老.对OO支持不力已基本被淘汰,就不在详述.而PHP6由于基本没有生产线上的应用,还基本只是一款概念产品,所以也不详述. PHP5的版本主要分三支:PHP5.2之前的版本.PHP5.2.X和PHP5.3那我们应该如何选择适用自己项目的版本呢?PHP5.2之前的版本不值得考虑,因为某些功能缺陷或者BUG.主流PHP程序对PHP5.2.X的兼容性最好,而每次版本号的升级带来的都是安全性和稳定性的改善,所以宜挑选最新的版本.目前P
-
在Linux系统的服务器上隐藏PHP版本号的方法
通常,大多数默认设置安装的web服务器存在信息泄露,这其中之一就是PHP.PHP 是如今流行的服务端html嵌入式语言(之一?).在如今这个充满挑战的时代,有许多攻击者会尝试发现你服务端的漏洞.因此,我会简单描述如何在Linux服务器中隐藏PHP信息. 默认上expose_php默认是开的.关闭"expose_php"参数可以使php隐藏它的版本信息. [root@centos66 ~]# vi /etc/php.ini 在你的php.ini, 定位到含有expose_php的那行把O
-
PHP5各个版本的新功能和新特性总结
本文目录:PHP5.2 以前:autoload, PDO 和 MySQLi, 类型约束PHP5.2:JSON 支持PHP5.3:弃用的功能,匿名函数,新增魔术方法,命名空间,后期静态绑定,Heredoc 和 Nowdoc, const, 三元运算符,PharPHP5.4:Short Open Tag, 数组简写形式,Traits, 内置 Web 服务器,细节修改PHP5.5:yield, list() 用于 foreach, 细节修改PHP5.6: 常量增强,可变函数参数,命名空间增强 一.PH
-
教你在header中隐藏php的版本信息
前言 在php渲染的网页header信息中,会包含php的版本号信息,比如: X-Powered-by: php/5.3.3,这有些不安全,有些黑客可能采用扫描的方式,批量寻找低版本的php服务器,利用php漏洞(比如hash冲突)来攻击服务器. php.ini中有一个选项可以控制是否暴露这个信息,那就是: expose_php = On 默认值是On,改成Off之后,就不会显示php版本信息啦. 或者在php-fpm的pool配置文件中设置: php_admin_flag[expose_php
-
亲自教你在netty中使用TCP协议请求DNS服务器的详细过程
目录 简介 DNS传输协议简介 DNS的IP地址 Do53/TCP在netty中的使用 搭建DNS netty client 发送DNS查询消息 DNS查询的消息处理 总结 简介 DNS的全称domain name system,既然是一个系统就有客户端和服务器之分.一般情况来说我们并不需要感知这个DNS客户端的存在,因为我们在浏览器访问某个域名的时候,浏览器作为客户端已经实现了这个工作. 但是有时候我们没有使用浏览器,比如在netty环境中,如何构建一个DNS请求呢? DNS传输协议简介 在R
-
Android 中隐藏虚拟按键的方法实例代码
下面通过一段代码给大家讲解android 隐藏虚拟按键的方法,废话不多说了,大家多多看看代码和注释吧,具体代码如下所示: /** * 隐藏虚拟按键,并且全屏 */ protected void hideBottomUIMenu() { //隐藏虚拟按键,并且全屏 if (Build.VERSION.SDK_INT > 11 && Build.VERSION.SDK_INT < 19) { // lower api View v = this.getWindow().getDec
-
Android中隐藏状态栏和标题栏的方法汇总(隐藏状态栏、标题栏的五种方法)
方法一: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // 隐藏标题栏 requestWindowFeature(Window.FEATURE_NO_TITLE); // 隐藏状态栏 getWindow().setFlags(WindowManager
-
在iframe中隐藏横向滚动条的方法大全
在iframe中隐藏横向滚动条.. 删除DM中自动生成的 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> 此句代码. body中这样写: <body style=style="overflow-x:hidden;overflow-y:scroll"> 能隐藏IFRAM
-
jQuery在header中设置请求信息的方法
jquery是js的类库,js本身不能操作header,因为js是在浏览器加载页面过程中才开始执行的header需要服务器端执行操作 如果是ajax,是可以设置header $.ajax({ url: "", data: {}, type: "GET", beforeSend: function(xhr){xhr.setRequestHeader('X-Test-Header', 'test-value');},//这里设置header success: funct
-
在VC中隐藏控制台程序窗口的实现代码
下面就介绍一下,如何隐藏win32 console application的console窗口因为此种方法是通过设置编译器的链接开关来实现,所以让我们来看一下编译器的链接开关选项(也就是linker选项).首先我们来看一下linker的 /subsystem 选项该选项的语法形式如下: /subsystem:{console|efi_application|efi_boot_service_driver|efi_rom|efi_runtime_driver|native|posix|window
-
Android 开发之Dialog中隐藏键盘的正确使用方法
Android 开发之Dialog中隐藏键盘的正确使用方法 场景:弹出一个Dialog,里面有一个EditText,用来输入内容,因为输入时,需要弹出键盘,所以当Dialog消失时,键盘要一起隐藏. 现在我们做一个自定义的Dialog MyDialog extends Dialog 一开始认为这个功能很容易实现,于是写了下面的代码 //Dialog的构造函数中写 this.setOnDismissListener(new OnDismissListener() { @Override publi
-
Java三目运算中隐藏的自动拆装箱
最近修改线上bug的时候排查了一个十分隐藏的bug,直接上代码: Integer a = null; boolean flag = true; Integer b = flag ? a : 0; 乍一看是没什么毛病的,但是已运行就会发现报空指针,在idea里面也会警告可能有空指针,这是什么原因呢? 直接看字节码: 0: aconst_null 1: astore_1 2: iconst_1 3: istore_2 4: iload_2 5: ifeq 15 8: aload_1 9: invok
随机推荐
- 使用Visual Studio 2017写静态库
- PHP生成条形码大揭秘
- 浅谈jquery中delegate()与live()
- Go语言RPC Authorization进行简单ip安全验证的方法
- 优化php效率,提高php性能的一些方法
- 详解vue的数据binding绑定原理
- Ajax方式删除表格一行数据示例代码
- Ajax使用JSON数据格式案例
- Vue.js第四天学习笔记
- 三位千万富翁告诉你 钱是怎么赚来的
- SQL Server2008中删除重复记录的方法分享
- 为超链接加上disabled后的故事
- IE:设置默认电子邮件
- PipedWriter和PipedReader源码分析_动力节点Java学院整理
- Java的JSON处理器fastjson使用方法详解
- Python基于递归实现电话号码映射功能示例
- 浅谈JAVA实现选择排序,插入排序,冒泡排序,以及两个有序数组的合并
- vue改变对象或数组时的刷新机制的方法总结
- C#管道式编程的介绍与实现
- C#做线形图的方法