2016-04-07 221 views
1

如何修改HTTP響應標頭並刪除WordPress 4.4.2中的「鏈接」和「X-Pingback」?在WordPress中修改HTTP響應標頭

僅在.htaccess中或在functions.php中?

請不要與文件頭部區域混淆!

回答

0

添加到您的functions.php文件:

function remove_unwanted_headers($headers) { 
    unset($headers['X-Pingback']); 
    unset($headers['Link']); 
    return $headers; 
} 

add_filter('wp_headers', 'remove_unwanted_headers'); 
+0

這種解決方案只能在首頁上 - 而不是在其他網站上。我使用起源框架。 – jMike

+0

你使用緩存嗎?如果您的網站通過插件或第三方緩存系統提供緩存頁面,此篩選器將不允許您修改標題。緩存頁面將在您的wp_headers過濾之前提供。 – Ryan

+0

我只在.htaccess中使用瀏覽器緩存。但是我在瀏覽器中關閉了緩存。在其他答案的評論中看到我的解決方案! – jMike

3
/* Remove X-Pingback in the HTTP header */ 

add_filter('wp_headers', function($headers) { 

unset($headers['X-Pingback']); 

return $headers; 

}); 

這(AITpro的解決方案)的作品對我來說,除去在HTTP頭中的鏈接REST API:

/*刪除HTTP標頭中Rest API的鏈接*/

remove_action('template_redirect','rest_output_link_header',11,0);

請檢查鏈接[https://wordpress.org/support/topic/wp-44-remove-json-api-and-x-pingback-from-http-headers][1]

+0

鏈接已損壞;重定向到https://wordpress.org/support/ – jMike

+0

這會刪除 - 鏈接:http:// /wp-json />; rel =「https://api.w.org/」 - 這裏 – jMike

+0

對不起,請檢查這個https://wordpress.org/support/topic/wp-44-remove-json-api-andx -ping-from-http-headers @jMike –

0

爲WordPress 4.9.1。 在你的主題的functions.php:

//remove Link header for rest api 
remove_action('template_redirect', 'rest_output_link_header', 11, 0); 
//remove Link header for shortlink 
remove_action('template_redirect', 'wp_shortlink_header', 11, 0); 
//remove X-Pingback header 
add_filter('pings_open', '__return_false'); 
// Optional. Disable xmlrpc 
add_filter('xmlrpc_enabled', '__return_false'); 

更多的過濾器和行動/wp-includes/default-filters.php