如何修改nginx默認(rèn)的名稱蛉腌,可以稍微的偽裝一下,也可以裝x
一般來說修改3個位置,一個是nginx.h烙丛、另一個是ngx_http_header_filter_module.c舅巷、還有一個ngx_http_special_response.c。
提示:以下修改需要在編譯安裝Nginx之前進行河咽,修改之后再編譯
修改src/core/nginx.h(Nginx內(nèi)部名稱的)
define NGINX_VERSION "000000"
define NGINX_VER "XXOO/" NGINX_VERSION
NGINX_VERSION是版本號钠右,NGINX_VER是名稱
修改src/http/ngx_http_header_filter_module.c(HTTP ResponseHeader)
static char ngx_http_server_string[] = "Server: XXOO" CRLF;
修改src/http/ngx_http_special_response.c(修改錯誤頁的底部Footer)
static u_char ngx_http_error_tail[] =
"<hr><center>XXOO</center>" CRLF
"</body>" CRLF
"</html>" CRLF
為什么不修改安裝后的Nginx Config下的fastcgi.conf呢?
因為現(xiàn)在外部已經(jīng)是無法了解我們的服務(wù)器名稱忘蟹,已經(jīng)達到我們的目的了飒房。
而且我們常用的一些程序,可能會對你的前端(反向代理服務(wù)器)做判斷媚值,畢竟Nginx不同于Apache狠毯,無法動態(tài)規(guī)則。
特別是Wordpress的緩存插件褥芒,大多會通過判斷你是否Nginx嚼松,如果是的話,提醒你添加一些規(guī)則語句锰扶。
這時fastcgi.conf就起作用的献酗,其中的
fastcgi_param SERVER_SOFTWARE
nginx/$nginx_version;可以使得PHP與Nginx內(nèi)部之間的互相了解。