Edit report at https://bugs.php.net/bug.php?id=66856&edit=1

 ID:                 66856
 User updated by:    eldmannen+php at gmail dot com
 Reported by:        eldmannen+php at gmail dot com
 Summary:            Failed manpage lookups return 200 OK
-Status:             Closed
+Status:             Assigned
 Type:               Bug
 Package:            Website problem
 PHP Version:        Irrelevant
 Assigned To:        levim
 Block user comment: N
 Private report:     N

 New Comment:

www.example.net/foo is a HTTP resource.
If you request a resource, and it is not found then it should return a 404.

That you do a search when requesting a resource which was not found is a 
different thing.

I request a resource.
The resource was not found.
The server should return 404.
The server may optionally assist me by performing a search, however that does 
not change the fact that the resource was not found.

When I entered www.example.net/foo, I did *not* peform a search, I requested a 
resource. If the resource was not found, it must return 404.

You are right that a search should not return 404, but I requested the resource 
/foo, I did not query /search?query=foo in which case you are right it should 
return a 200 OK.


Previous Comments:
------------------------------------------------------------------------
[2015-01-03 13:14:16] cmbecker69 at gmx dot de

> so technically, the resource is found.

IMHO, the *requested* resource is not found, for instance, when
<http://php.net/doesntexist> is requested.

> If we return a 404, we are essentially telling the browser that
> the "search results functionality" isn't available.

Note, that it is something different when you type "doesntexist"
in the searchbox. You may also compare the difference in the
"final" URI:
<http://php.net/manual-lookup.php?pattern=doesntexist&scope=quickref>
<http://php.net/manual-lookup.php?pattern=doesntexist&lang=en&scope=404quickref>

The value of the scope parameter already hints at a "404".

------------------------------------------------------------------------
[2015-01-03 12:49:31] [email protected]

GitHub and Wikipedia's approach are slightly different to PHP.net in my opinion 
as they render a straight 404 whereas PHP.net returns result sets based on a 
list possible matches - so technically, the resource is found. If we return a 
404, we are essentially telling the browser that the "search results 
functionality" isn't available.

------------------------------------------------------------------------
[2015-01-03 12:41:41] cmbecker69 at gmx dot de

> A 404 is intended to be delivered should an application resource
> cannot be located by the server, not when a search returns no
> results.

Correct. However, in this case the user doesn't intend to search.
Compare the respective behavior of php.net to Github[1] or
Wikipedia[2], for instance.

[1] <https://github.com/doesntexist>
[2] <http://en.wikipedia.org/wiki/Doesntexist>

------------------------------------------------------------------------
[2015-01-03 12:14:48] [email protected]

A 404 is intended to be delivered should an application resource cannot be 
located by the server, not when a search returns no results.

------------------------------------------------------------------------
[2014-03-13 17:08:53] [email protected]

A successful search isn't a 404. The fact that it is doing a search means it 
didn't find what you are looking for, though. Anyone else have any comments? 
Sending a 404 is really easy if that's what we want to do, I'm just not sure.

------------------------------------------------------------------------


The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at

    https://bugs.php.net/bug.php?id=66856


--
Edit this bug report at https://bugs.php.net/bug.php?id=66856&edit=1

-- 
PHP Webmaster List Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to