web server避免一些不必要的麻烦,可以把apache和php的版本信息不显示
隐藏 Apache 版本信息
/etc/apache2/apache2.conf 或 /etc/httpd/conf/httpd.conf
ServerTokens ProductOnly
ServerSignature Off
重启 apache
现在 http 头里面只看到:
Server: Apache
=====================
nginx
#vi nginx.conf
在http 加上 server_tokens off;
如下:
http {
……省略配置
sendfile on;
tcp_nopush on;
keepalive_timeout 65;
tcp_nodelay on;
server_tokens off;
…….省略配置
}
=======================
隐藏 PHP 版本
php.ini
expose_php On
改成
expose_php Off
重启apache后,php版本在http头中隐藏了。
===
参考解决方案:
1. Lighttpd 1.4.20
src/response.c:108 改为:
buffer_append_string_len(b, CONST_STR_LEN("Server: jufukeji"));
输出 Header:
HTTP/1.1 404 Not Found
Content-Type: text/html
Content-Length: 345
Date: Mon, 12 Jan 2009 13:54:02 GMT
Server: jufukeji
2. Nginx 0.7.30
src/http/ngx_http_header_filter_module.c:48-49 改为:
static char ngx_http_server_string[] = "Server: jufukeji" CRLF;
static char ngx_http_server_full_string[] = "Server: jufukeji" CRLF;
输出 Header:
HTTP/1.1 200 OK
Server: jufukeji
Date: Mon, 12 Jan 2009 14:01:10 GMT
Content-Type: text/html
Content-Length: 151
Last-Modified: Mon, 12 Jan 2009 14:00:56 GMT
Connection: keep-alive
Accept-Ranges: bytes
3. Cherokee 0.11.6
cherokee/version.c:93 添加:
ret = cherokee_buffer_add_str (buf, "jufukeji");
return ret;
输出 Header:
HTTP/1.1 200 OK
Connection: Keep-Alive
Keep-Alive: timeout=15
Date: Mon, 12 Jan 2009 14:54:39 GMT
Server: jufukeji
ETag: 496b54af=703
Last-Modified: Mon, 12 Jan 2009 14:33:19 GMT
Content-Type: text/html
Content-Length: 1795
4. Apache 2.2.11
server/core.c:2784 添加:
ap_add_version_component(pconf, "jufukeji");
return;
输出 Header:
HTTP/1.1 200 OK
Date: Mon, 12 Jan 2009 14:28:10 GMT
Server: jufukeji
Last-Modified: Sat, 20 Nov 2004 20:16:24 GMT
ETag: "1920edd-2c-3e9564c23b600"
Accept-Ranges: bytes
Content-Length: 44
Content-Type: text/html
5. Squid 3.0 STABLE 11
src/globals.cc:58 改为:
const char *const full_appname_string = "jufukeji";
输出 Header:
HTTP/1.0 400 Bad Request
Server: jufukeji
Mime-Version: 1.0
Date: Mon, 12 Jan 2009 15:25:15 GMT
Content-Type: text/html
Content-Length: 1553
Expires: Mon, 12 Jan 2009 15:25:15 GMT
X-Squid-Error: ERR_INVALID_URL 0
X-Cache: MISS from 'cache.hutuworm.org'
Via: 1.0 'cache.hutuworm.org' (jufukeji)
Proxy-Connection: close
6. Tomcat 6.0.18
java/org/apache/coyote/http11/Constants.java:56 和 java/org/apache/coyote/ajp/Constants.java:236 均改为:
ByteChunk.convertToBytes("Server: jufukeji" + CRLF);
输出 Header:
HTTP/1.1 200 OK
Server: jufukeji
ETag: W/"7857-1216684872000"
Last-Modified: Tue, 22 Jul 2008 00:01:12 GMT
Content-Type: text/html
Content-Length: 7857
Date: Mon, 12 Jan 2009 16:30:44 GMT
7. JBoss 5.0.0 GA
a. tomcat/src/resources/web.xml:40 改为
jufukeji
b. 下载 JBoss Web Server 2.1.1.GA srctar (http://www.jboss.org/jbossweb/downloads/jboss-web/)
java/org/apache/coyote/http11/Constants.java:56 和 java/org/apache/coyote/ajp/Constants.java:236 均改为:
ByteChunk.convertToBytes("Server: jufukeji" + CRLF);
将编译所得 jbossweb.jar 覆盖 JBoss 编译输出文件:
JBOSS_SRC/build/output/jboss-5.0.0.GA/server/all/deploy/jbossweb.sar/jbossweb.jar
JBOSS_SRC/build/output/jboss-5.0.0.GA/server/standard/deploy/jbossweb.sar/jbossweb.jar
JBOSS_SRC/build/output/jboss-5.0.0.GA/server/default/deploy/jbossweb.sar/jbossweb.jar
JBOSS_SRC/build/output/jboss-5.0.0.GA/server/web/deploy/jbossweb.sar/jbossweb.jar
输出 Header:
HTTP/1.1 200 OK
Server: jufukeji
X-Powered-By: jufukeji
Accept-Ranges: bytes
ETag: W/"1581-1231842222000"
Last-Modified: Tue, 13 Jan 2009 10:23:42 GMT
Content-Type: text/html
Content-Length: 1581
Date: Tue, 13 Jan 2009 10:30:42 GM
分享到:
相关推荐
- **ServerTokens** - 控制客户端接收到的“Server:”响应头中包含的信息内容。这对于隐藏服务器版本等敏感信息非常重要,可以通过调整`ServerTokens`参数来实现。 通过以上配置,用户可以更加安全地管理和维护...
- **Nginx的浏览器本地缓存设置**:通过设置HTTP响应头中的`Cache-Control`和`Expires`字段,可以控制浏览器如何缓存页面资源。 #### Nginx与PHP(FastCGI)的安装、配置与优化 - **安装PHP**:可以在Linux系统中...
【大型网站后台架构的Webserver与缓存...FastCGI等技术提高了动态内容的处理效率,而Lighttpd、Apache和Nginx等Web服务器各有特点,适应不同的需求。正确配置和优化这些组件,能够构建出高效、稳定的大型网站后台架构。
描述中的"webserver软件"可能是指特定的Web服务器程序,例如Apache HTTP Server、Nginx、Microsoft IIS或者Lighttpd等。这些软件都提供了类似的功能,即接收HTTP请求并返回响应,但它们在性能、配置灵活性、资源消耗...
服务器接收到请求后,解析这些信息,找到对应的资源,然后将资源以HTTP响应的形式返回给客户端,响应中包含状态码、头部信息和可能的响应体(如HTML、图片或文件内容)。 二、HTTP方法 HTTP协议定义了多种方法,...
Web服务器的响应头信息,如Server字段,经常透露出服务器的类型。例如,"Apache"、"lighttpd"、"nginx"和"IIS"等关键字都可以用来识别它们。 接着,应用服务器和编程语言也提供了识别依据。例如,Tomcat、Jboss、...
这个请求包含方法(GET、POST等)、URL、协议版本、头部信息和可能的请求体。服务器接收到请求后,解析请求内容,根据请求的方法执行相应的操作,然后返回HTTP响应,包括状态码、头部信息和响应体(如网页内容)。 ...
- HTTP响应:服务器对请求的回应,包含状态码(如200表示成功,404表示未找到)、头部信息和响应主体。 3. **HTTP协议版本**: - HTTP/1.0:基本的HTTP协议版本,支持短连接,每个请求都会建立新的TCP连接。 - ...
Lighttpd是一个轻量级的Web服务器,设计目标是低系统资源消耗和快速响应。它适合处理静态内容和轻量级的动态应用,特别适合资源有限的环境或者需要快速部署的小型网站。 Jetty是另一个轻量级的Java应用服务器,专注...
- **添加响应头**:通过修改Apache配置文件(如httpd.conf),可以添加Public-Key-Pins响应头。 - **示例代码**: ```apache *:443> ServerName example.com Header always set Public-Key-Pins "pin-sha256=\...
例如,Apache的httpd.conf和Nginx的nginx.conf就是其主要配置文件。配置过程中,需确保正确设置监听端口、文档根目录、服务器标识等基础参数,同时,根据需求添加或修改重定向规则、SSL证书配置、限速策略等高级设置...
常见的Linux Web服务器软件有Apache、Nginx和Lighttpd等。 1. **Apache HTTP Server**:Apache是最广泛使用的Web服务器,它提供了丰富的模块化设计,可以根据需求进行扩展。配置Apache通常涉及编辑`httpd.conf`或`...
4. 状态码与响应头:Web服务器还会附带状态码(如200表示成功,404表示未找到)和响应头信息,提供有关请求处理的额外信息。 二、常见的Web服务器 1. Apache:开源且跨平台的Web服务器,全球市场份额最高,支持...
在这个"Webserver相关资料"的压缩包中,包含了一些常见的Web服务器软件及其相关的测试网站,这对于我们理解和学习Web服务器的工作原理以及配置技巧提供了宝贵的资源。 1. **Lighttpd**: Lighttpd是一个轻量级且高...