headers_list()
和 apache_reponse_headers()
返回一个大大减少的实际响应 header 列表,即使在 headers_sent()
和 之后也是如此>get_headers()
将发出另一个 HTTP 请求。
那么,您如何才能获得要随当前页面一起发送的响应 header 的完整列表,或者这些由服务器设置的额外响应 header 是否仅在 PHP 完成后很长时间才设置?
最佳答案
托管网络服务器可以免费添加 header 。例如,它可以透明地压缩 php 的输出,设置 Strict-Transport-Security标题,等等。在某些设置中(例如 wikimedia's),该请求还由另一台计算机上的另一个 HTTP 服务器代理以允许缓存。
因此,无法获取已发送 HTTP header 的完整列表。 为什么你还是想要它?
关于php - php获取当前页面所有HTTP响应头的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7915841/