Make WordPress Core

Opened 16 months ago

Last modified 3 months ago

#47733 reviewing defect (bug)

Undefined index HTTP_HOST in wp-includes/ms-settings.php on line 57

Reported by: JochenT Owned by: SergeyBiryukov
Milestone: 5.6 Priority: normal
Severity: minor Version: 5.2.2
Component: Bootstrap/Load Keywords: has-patch dev-feedback
Focuses: multisite Cc:


We get requests on our server of the form

175.143.12.??? - - [30/Jun/2019:10:22:45 +0200] "GET / HTTP/1.0" 500 73873 "-" "-" (dinse.eu)

This request uses HTTP/1.0 and results in a status code 500. The related entry in the PHP error log is

	[30-Jun-2019 08:22:45 UTC] PHP Notice:  Undefined index: HTTP_HOST in /usr/www/xxxx/wp-includes/ms-settings.php on line 57
  1. In ms-settings.php on line 57 it is not checked if
    is set.
  2. Also I've found that in the case of this specific request
    is defined and not empty and can be used as a replacement.

My suggestion is to first check if


is set else check if


is set and if both are not set to implement a graceful error handling.

This may be related to #34353.

WP 5.2.2
PHP 5.6.40
Server: Apache/2.4.25 (Debian)
WP_DEBUG = true

Change History (4)

#1 @JochenT
16 months ago

Further info:
Apache sets HTTP_HOST to the correspondending value in the header of a HTTP request. As mentioned in the doc for the UseCanonicalName Directive ancient clients may do not provide a 'Host:...' header.

In such cases SERVER_NAME may be used to construct self-referential URLs. The question is if it still makes sense to support these ancient clients.

Nevertheless, in case HTTP_HOST is missing a convenient error handling should be added.

This ticket was mentioned in PR #195 on WordPress/wordpress-develop by Mte90.

8 months ago

Trac ticket: https://core.trac.wordpress.org/ticket/47733

A simple patch just to test also the new GitHub environment for contribution :-)

#3 @Mte90
5 months ago

  • Keywords has-patch dev-feedback added; needs-patch removed

Patch refreshed :-)

#4 @SergeyBiryukov
3 months ago

  • Milestone changed from Awaiting Review to 5.6
  • Owner set to SergeyBiryukov
  • Status changed from new to reviewing
Note: See TracTickets for help on using tickets.