Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: Attribute lang redefined in Entity, line: 5 in /home/mahesh/public_html/maheshchari.com/wp-content/plugins/wp-syntax-download-extension/wp-syntax-download-extension.php on line 98
How to stop the web browser caching the document
All web documents, media and other web resources retrieved by a Web browser, are often saved, or cached, locally on the user’s hard drive. The next time that media or web resources is requested the Web browser may load the file from the cache instead of downloading it over the internet. This might be desirable for a some web document content doesn’t change often but undesirable for documents are updated frequently with new content or information.
All web servers sends to the browser with some basic information about the document before it sent .in the above example we can see some of them.for full details please refer here . we can use this server side headers to prevent browser caching .we learn here only PHP related headers.
preventing browser cache with javascript.
Here i am showing basic jQuery plugin that appends a random time to each links in document.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 | (function($){ $.fn.nocachelink=function(options){ //itereate trough each element in given element collection return this.each(function(){ var href=$(this).attr('href'); if(href.lastIndexOf('?')!=-1){ //if query string is set or not for link href=href+'?'+new Date().getTime(); }else{ href=href+'&'+new Date().getTime(); } $(this).attr('href',href); // update new href attribute }); } })(jQuery); |
An example how to use it
$().ready(function(){ $('.nocache').nocachelink(); }); |
preventing browser cache with meta tags.
to prevent cache by means of html meta tags add following tags to document head section.
<meta http-equiv="Pragma" content="no-cache"> <meta http-equiv="Expires" content="-1"> <meta http-equiv="CACHE-CONTROL" content="NO-CACHE"> |
preventing browser cache with server side headers.
we can also use HTTP headers by php also as below,remember you must add this lines to start of code.
// @-silenced or error suppress operater @header( 'Expires: Wed, 11 Jan 1984 05:00:00 GMT' ); @header( 'Last-Modified: ' . gmdate( 'D, d M Y H:i:s' ) . ' GMT' ); @header( 'Cache-Control: no-cache, must-revalidate, max-age=0' ); @header( 'Pragma: no-cache' ); |
preventing browsers cache with ajax calls.
we can also set headers with ajax response headers.
preventing browser cache with other methods.
By default all browser don’t cache SSL layered documents.
below example document won’t cached by browsers.
https://www.yourdomain.com |

