I wish to make certain when the file changes (if cache files are erased for instance), anyone's browser should not load the cached version.

This is actually the problem I discovered. Listed here are the headers after i Avoid using caches_page:

HTTP/1.1 200 OK => 
ETag => "4ff902bc57e1892d7a963e43bf56dcc8"
X-UA-Compatible => IE=Edge,chrome=1
Cache-Control => max-age=0, private, must-revalidate
X-Runtime => 2.710376
X-Rack-Cache => miss
Set-Cookie => _Myapp_session=.....; path=/; HttpOnly
Status => 200

And listed here are the headers after i use it:

HTTP/1.1 200 OK => 
ETag => "80003-1ad93-4b44a71a41180"
Last-Modified => Sat, 17 Dec 2011 14:22:14 GMT
Accept-Ranges => bytes

I have removed the most popular lines for simple comparison.

What are the difficulties with these varying headers?

I did not find any rails method of doing this so place in "Header set" directives in apache.conf