PHP如何获取指定网址的header头信息及隐藏关闭的方法

autoload
发布: 2023-03-08 22:24:01
转载
3534 人浏览过

一、PHP如何获取指定URL的header信息

       超级简单,就一行命令即可:

<?php print_r(get_headers(&#39;https://www.mdaima.com&#39;));?>
 
Array
(
    [0] => HTTP/1.1 403 Forbidden
    [1] => Date: Sun, 24 Jan 2021 05:09:48 GMT
    [2] => Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1i PHP/7.3.26
    [3] => Content-Length: 199
    [4] => Connection: close
    [5] => Content-Type: text/html; charset=iso-8859-1
)
登录后复制

二、如何禁显示或隐藏header信息的方法

一共分为两步,第一步是将PHP.ini文件中的expose_php = On改为expose_php = Off,重启Apache后,再看一下

Array
(
    [0] => HTTP/1.1 403 Forbidden
    [1] => Date: Sun, 24 Jan 2021 05:10:50 GMT
    [2] => Server: Apache/2.4.46 (Win64) OpenSSL/1.1.1i
    [3] => Content-Length: 199
    [4] => Connection: close
    [5] => Content-Type: text/html; charset=iso-8859-1
)
登录后复制

重启后,我们可以看到关于PHP版本的信息已经不显示了,但是Apache和服务名的信息还有显示,我们需要更彻底一点,这样才安全。我们需要在Apache的httpd.conf中增加两个指令,首先我们先确认一下Apache的httpd.conf文件中有没有如下两个配置指令,如果没有的话直接在配置文件最下面增加两行数据。

ServerTokens Prod
ServerSignature Off
登录后复制

关于ServerTokens的指令配置参数看下面的说明:

ServerTokens Prod   显示“Server: Apache”
ServerTokens Major  显示 “Server: Apache/2″
ServerTokens Minor  显示“Server: Apache/2.2″
ServerTokens Min   显示“Server: Apache/2.2.17″
ServerTokens OS   显示 “Server: Apache/2.2.17 (Unix)”
ServerTokens Full   显示 “Server: Apache/2.2.17 (Unix) PHP/5.3.5″ (如果未指定任何的值,这个是默认的返回信息)
登录后复制

关于ServerSignature On的说明:

设置为On时,当有用户请求访问我们网站的网页不存在时,服务器将有错误提示显示出来,错误提示将在页面的最下面将包含服务器的名字、Apache的版本等相关都显示信息,这将给一些不安好心的人提供一些便利而利用已知的版本漏洞。所以我们最好不要显示这些信息,我们可以将这个参数设置为Off

通过修改这两个参数配置文件,最终获取header的效果如下:

Array
(
    [0] => HTTP/1.1 403 Forbidden
    [1] => Date: Sun, 24 Jan 2021 04:54:49 GMT
    [2] => Server: Apache
    [3] => Content-Length: 258
    [4] => Connection: close
    [5] => Content-Type: text/html; charset=iso-8859-1
)
登录后复制

推荐:《php视频教程》《php教程

以上是PHP如何获取指定网址的header头信息及隐藏关闭的方法的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:码代码-李雷博客
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板