You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python获取网站所采用的Web服务器(如Apache、Nginx等)

判断网站Web服务器类型并通过Python获取信息

核心原理

Web服务器通常会在HTTP响应头的Server字段中暴露自身类型及版本信息,这是最直接的判断依据。但部分网站会隐藏或伪造该字段,因此结果不一定完全准确。

手动判断方法

  • 浏览器开发者工具:按下F12打开开发者工具,切换到「Network」标签页,刷新目标页面,选中第一个请求,查看「Response Headers」中的Server字段。
  • 终端curl命令:执行以下命令,查看输出中的Server行:
    curl -I https://example.com
    

Python代码实现

使用requests库发送请求并提取响应头的Server字段,代码如下:

import requests

def get_web_server(url):
    try:
        # 发送HEAD请求(仅获取响应头,比GET更高效)
        response = requests.head(url, allow_redirects=True)
        # 获取Server字段,若不存在则返回提示
        server_info = response.headers.get('Server', '无法获取服务器信息(可能被隐藏或伪造)')
        return server_info
    except requests.exceptions.RequestException as e:
        return f"请求失败:{str(e)}"

# 示例使用
if __name__ == "__main__":
    target_url = "https://example.com"
    print(f"目标网站 {target_url} 的服务器信息:")
    print(get_web_server(target_url))

注意事项

  • 部分网站会通过配置隐藏Server字段,或返回虚假标识(比如用Nginx却伪装成Apache),此时无法通过该方法获取真实信息。
  • 若目标网站启用了CDN(如Cloudflare),Server字段可能显示CDN的标识而非源站服务器类型。

内容的提问来源于stack exchange,提问作者user19932753

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 19:10:48