Return to Project-GC

Welcome to Project-GC Q&A. Ask questions and get answers from other Project-GC users.

If you get a good answer, click the checkbox on the left to select it as the best answer.

Upvote answers or questions that have helped you.

If you don't get clear answers, edit your question to make it clearer.

+3 votes
461 views
The function to find bad logs is a great service. In the same spirit it would be nice to have a function to see if any links in ones cache descriptions have expired. A recent case is imageshack that changed their site structure. Now there are a ton of caches with broken image links, and most owners are likely unaware of this.

This would probably aim for the simplest of solutions. Check http header for 4xx, and maybe non-responding server. Also, it would probably be an on-demand function as it would be a ton of traffic otherwise.
in Feature requests by linsrille (460 points)

1 Answer

+2 votes

An interesting idea. We will have to look into how reasonable this is for us. Using CURLOPT_NOBODY php/curl should be able to do this very lightweight. Eg, not retrieving the data itself, but only the http headers.

My first idea of implementation would be to return something like the following. Geocaches without links wouldn't be listed. Archived geocaches would probably be ignored by default (or always).


GC123 - Awesome geocache

200 http://example.com/111

302 http://example.com/333

500 http://example.com/333

GC456 - Less awesome geocache

...


It would most likely be a background job where one has to return later to view the report. A working link most likely takes less than a second, links with timeouts could take 10-30 seconds depending on what we set the timeout at. It would also be reasonable to retry all timeouts an hour later for example.

The alternative to a background job would be a page that makes one ajax request per geocache or link and then adds to the page for every item received. It would look pretty much like the Bad logs page works today.

by magma1447 (Admin) (241k points)
...