<p>I have a web site using apache httpd as the server and mysql as the backend. It publishes a "thought for the day" that has gotten so popular that the server is crashing due to the number of requests. Since the same page is been requested (the thought only changes once a day), is it possible to put a caching server in front of my main server, so that when the same request is made by different clients, the caching server returns the page without having to go to the database?</p>

Absolutely.  There are many products that will work well for this.  Apache itself can be configured to function this way although, if you are on Linux or UNIX, Squid is the better option as it is specifically designed to do this very job.
On Windows, MS has always offered cache/proxy products that will do this function.  Currently this is ISA Server 2006.  Although this is dramatically overkill for this type of application.
Squid
is my recommendation.