Make WordPress Core

Opened 16 years ago

Closed 16 years ago

Last modified 8 years ago

#3993 closed defect (bug) (fixed)

Snoopy Class incompability with lighttpd/1.4.11 (and other httpds?)

Reported by: hakre's profile hakre Owned by: rob1n's profile rob1n
Milestone: 2.3 Priority: normal
Severity: normal Version: 2.1.2
Component: General Keywords: snoopy http has-patch commit
Focuses: Cc:


I had the situation that an RSS request made to a server resultet in a 404 instead 200. I analyzed it and it came to my attention that using the Port within the Host Request header (as snoopy does) triggers that error.

Since HOST is not a valid http/1.0 (Request) Header(1), (2) applies here. Port 80 is the default Port for HTTP(2) it must not be part of the HOST Header. Since this is causing the Error with lighttpd/1.4.11 I suggest to modify the snoopy class:

file: wp-inludes/class-snoopy.php
line: 799ff
change from:
				$headers .= ":".$this->port;

change to:
				if ($this->port != 80) {
					$headers .= ":".$this->port;

BTW this type of HTTP Implementation is similar to other stable and mature libraries on various platforms.

(1) see Full-Request in

(2) see 14.23 in

Attachments (1)

3993.diff (517 bytes) - added by rob1n 16 years ago.

Download all attachments as: .zip

Change History (8)

#1 @hakre
16 years ago

i found another report about this issue in the snoopy bugtracker:

#2 @foolswisdom
16 years ago

  • Milestone changed from 2.1.3 to 2.2

#3 @foolswisdom
16 years ago

  • Milestone changed from 2.2 to 2.3

16 years ago

#4 @rob1n
16 years ago

  • Keywords has-patch 2nd-opinion added
  • Owner changed from anonymous to rob1n
  • Status changed from new to assigned

Send it upstream?

#5 @rob1n
16 years ago

  • Keywords commit added; 2nd-opinion removed

#6 @rob1n
16 years ago

  • Resolution set to fixed
  • Status changed from assigned to closed

(In [5424]) Don't add port if port == 80 (default port). fixes #3993

#7 @gene1wood
8 years ago

This has been fixed upstream in Snoopy 2.0.0

Note: See TracTickets for help on using tickets.