Fact-checked by Grok 2 weeks ago

Meta refresh

Meta refresh is a mechanism that instructs web browsers to automatically refresh the current document or redirect to a specified after a predefined delay, implemented via the <meta> element's http-equiv attribute set to "refresh". This directive, equivalent to the HTTP Refresh response header, allows control over page reloading or navigation without requiring server-side intervention. The syntax for meta refresh typically appears in the document's <head> section as <meta http-equiv="refresh" content="delay"> for simple reloads, where delay is a non-negative representing seconds until refresh (defaulting to 0 if omitted). For redirects, it extends to <meta http-equiv="refresh" content="delay; url=target-URL">, causing the browser to navigate to the provided after the delay, using a "replace" action to avoid adding entries to the session . The timer begins after the document's load and pageshow events, and user agents may adjust or cancel the action based on user preferences or security contexts like sandboxing. Examples include reloading a page every 5 minutes with <meta http-equiv="refresh" content="300"> or redirecting after 3 seconds via <meta http-equiv="refresh" content="3; url=https://example.com">. Proposed in 1994 by Roy Fielding as part of an extension to the HTML <meta> element to emulate HTTP response headers, meta refresh originated as a server-readable directive but evolved into a client-side browser instruction under modern specifications. It has been universally supported across major browsers since the early days of the web, though its use has declined in favor of more efficient alternatives like HTTP 301/302 redirects. Despite its utility for dynamic content updates or temporary redirects, meta refresh raises significant accessibility concerns, as it can disorient users with cognitive disabilities, low , or those relying on screen readers by causing unexpected content changes. According to WCAG 2.2 Success Criterion 2.2.1 (Timing Adjustable), delays from 1 to 72,000 seconds (20 hours) must be user-adjustable if used; immediate redirects (0 seconds) and delays exceeding 20 hours are generally acceptable without adjustment. For , processes meta refresh redirects but strongly discourages them over server-side HTTP redirects, citing potential user confusion and inconsistent browser handling.

Fundamentals

Definition

Meta refresh is a legacy feature in HTML that employs a <meta> element with the http-equiv attribute set to "refresh" to direct web browsers to automatically reload the current page or navigate to a specified URL after a defined time interval. This pragma directive emulates the behavior of an HTTP Refresh header, enabling client-side control over page updates without relying on scripting or server responses. The core functionality of meta refresh centers on timed actions: it instructs the to refresh the in place if no is provided, or to redirect to a new , thereby facilitating dynamic content delivery or seamless transitions between pages. This mechanism processes the directive upon parsing the <meta> element, with the initiating the action after the elapsed delay unless interrupted by input or preferences. In distinction from other <meta> elements, which primarily manage metadata like character set declarations (charset) or mobile viewport settings, meta refresh is uniquely oriented toward temporal and navigational browser behaviors, prioritizing automated page lifecycle management over static document properties. Technically, the feature depends on the content attribute to encode the delay as an integer number of seconds, optionally followed by a semicolon and the phrase "URL=" preceding the target resource's IRI; this structure ensures precise control over the timing and destination of the browser's action. Originally introduced by as a proprietary extension, it has persisted as a widely supported capability defined in modern HTML specifications for .

Syntax and Attributes

The meta refresh directive is implemented using the <meta> element in HTML, with the http-equiv attribute set to "refresh" (case-insensitive). This element must be placed within the <head> section of the document to define page-level metadata that instructs the browser to refresh the current page or redirect to another after a specified delay. The general syntax is as follows:
html
<meta http-equiv="refresh" content="delay; url=URL">
Here, the content attribute is mandatory and contains the core instructions for the refresh behavior. It consists of a delay value followed optionally by a URL parameter separated by a semicolon. The delay is specified as a non-negative integer representing the number of seconds before the action occurs; for example, content="5" delays the refresh by 5 seconds. If the url parameter is included, it specifies the target location for redirection, which can be an absolute URL (e.g., https://example.com/page.html) or a relative URL (e.g., page.html), and must be a valid URI. The delay value is parsed strictly as a non-negative integer; fractional values (e.g., 0.5) or negative numbers (e.g., -1) are invalid and result in no effect, with the ignoring the directive. A delay of zero triggers an immediate refresh or redirect without waiting. Omitting the [url](/page/URL) parameter entirely causes the current page to reload after the delay, effectively performing a simple refresh. Whitespace around the and is ignored during parsing, and the may be quoted if it contains special characters. Regarding placement, the element with http-equiv="refresh" must reside in the document's to be effective, as it applies to the entire page and the timer begins after the load and pageshow events. While the specification prohibits more than one such element per document to avoid conflicts, browsers may process multiple instances, typically honoring only the first valid one encountered in the head. In practice, only a single meta refresh tag is used per page to ensure predictable behavior.

Historical Context

Origins

The meta refresh feature was introduced in 1995 by as a proprietary HTML extension for version 1.1, enabling browsers to automatically refresh or redirect pages without server involvement. This client-side mechanism used the <meta> element with http-equiv="refresh" to specify a delay and optional , allowing web developers to simulate dynamic behavior in otherwise static documents. In the early web landscape, meta refresh addressed key limitations of the time, including incomplete support for HTTP redirect status codes in the draft stages of HTTP/1.0 and the scarcity of client-side scripting options before JavaScript's debut later that year in . Server-side solutions like were available but required additional infrastructure, making meta refresh a practical alternative for simple auto-updates, such as reloading stock tickers or news feeds, directly in the browser. The first documented implementation of meta refresh occurred as part of Netscape's extensions to with the release of 1.1 in April 1995, as a way to extend basic HTML capabilities for emerging dynamic content requirements. This innovation is attributed to Netscape engineers responding to the static nature of early , which constrained web interactivity in an era of limited and computing resources.

Evolution and Adoption

Meta refresh, originating from Netscape Navigator in the mid-1990s, gained early adoption among major browsers as a client-side mechanism for page redirection and auto-refreshing. It was integrated into 3.0 upon its release in August 1996, enabling widespread use for dynamic content updates in the burgeoning web environment. By the late 1990s, support had expanded to include browsers like and others, facilitating its role in early web applications despite lacking formal standardization at the time. Standardization efforts acknowledged meta refresh as a practical but non-standard feature in the HTML 4.01 specification of December 1999, where the W3C described support for <META http-equiv="refresh"> in some user agents while explicitly discouraging its use for redirects in favor of server-side methods to improve and reliability. In the specification, finalized around 2014 by the W3C and , it was retained as a "pragma directive" for , classified as a mechanism with warnings about potential user disorientation, though no outright was mandated. This tolerant approach ensured continuity while promoting modern alternatives like HTTP redirects. Browser support for meta refresh evolved to near-universal levels by the 2010s, with full implementation in all major desktop browsers including (from version 4), (from version 2), (from version 3.1), and (from version 12). As of 2025, this support persists across current versions of these browsers, covering over 95% global usage, though early mobile implementations showed quirks such as inconsistent delay handling in older browsers before version 4.4. By 2025, meta refresh remains without formal deprecation in standards or browser engines, though its usage has declined in favor of more efficient options like timers and server-side redirects. During the , browsers issued security updates enhancing validation in meta elements to counter (XSS) risks, such as through the introduction of the X-XSS-Protection response header in , , and , which helped block malicious redirects.

Implementation

Redirection Use Cases

Meta refresh is primarily employed for implementing temporary redirects, instructing the browser to navigate to a new after a specified delay, often used in scenarios where server-side redirection is unavailable. This approach is particularly valuable for changes, such as during site maintenance or updates, where a brief can inform users before forwarding them. A common implementation involves an immediate redirect using a zero-second delay, as shown in the following HTML snippet placed within the <head> section:
html
<!DOCTYPE html>
<html>
<head>
    <meta http-equiv="refresh" content="0; url=https://example.com">
    <title>Redirecting...</title>
</head>
<body>
    <p>If you are not redirected automatically, <a href="https://example.com">click here</a>.</p>
</body>
</html>
This code causes the browser to load the target URL after the specified delay, with a fallback link for users whose browsers do not support the directive. For delayed redirects, a non-zero value allows time to display interstitial content, such as a notification about the redirection reason. For instance, the content attribute can be set to "3; url=/newpage.html" to pause for three seconds before navigating, enabling users to read a message like "This page has moved to a new location." Such delays are useful for providing context without relying on JavaScript. Practical scenarios include site migrations, where old URLs are forwarded to new ones to maintain user access during restructuring; error page forwarding, such as redirecting pages to relevant alternatives; and device-specific URL switching, where a static page might redirect mobile users to a responsive version. In these cases, meta refresh serves as a simple fallback mechanism. The meta refresh directive is parsed as soon as the <head> is encountered during page loading, but the timer begins after the document's load and pageshow events have fired, without requiring execution. This makes it a reliable option in non-JavaScript environments, such as legacy browsers or when scripts are disabled, though it always loads the intermediate page first.

Auto-Refresh Use Cases

Meta refresh is primarily employed to enable dynamic updates on pages by periodically reloading the current without navigating to a different . This technique instructs the to refresh the page after a specified delay, allowing server-generated to be fetched and displayed anew. For instance, setting the content attribute to "30" causes the page to reload every 30 seconds, which was useful in early applications for displaying time-sensitive information. A common implementation involves embedding the meta tag in the head without a parameter, as shown in the following snippet:
<!DOCTYPE html>
<html lang="en">
<head>
    <meta http-equiv="refresh" content="30">
    <title>Dynamic Update Page</title>
</head>
<body>
    <!-- [Server](/page/Server)-generated [content](/page/content), e.g., live data -->
    <p>Current data: <!-- Updated on each reload --></p>
</body>
</html>
This approach relies on the to produce fresh with each request, making it suitable for scenarios where the entire context remains relevant but requires periodic renewal. Key use cases include stock tickers, where the page reloads to fetch updated market prices, ensuring users see quotes without manual intervention. Similarly, news feeds benefit from auto-refresh to display the latest headlines or articles, such as reloading every 5 minutes to incorporate breaking updates. dashboards, akin to database views, leverage this for refreshing status reports or metrics, while early rooms used it to simulate live conversations by reloading message logs at intervals. Ad rotations also employed meta refresh to cycle banner advertisements, reloading the page to serve new creative assets from the . In practice, meta refresh triggers a full page reload, which can disrupt user focus by resetting scroll position, form states, and animations, making it unsuitable for modern single-page applications (SPAs) that rely on updates to maintain seamless interactions.

Usability and Accessibility

User Experience Impacts

Meta refresh directives can cause significant user disorientation, especially through unexpected redirects or periodic refreshes that alter page content without user consent. The (W3C) advises against their use for automatic redirects or updates, noting that they disrupt the expected flow of web navigation and may prevent users from fully engaging with or comprehending the current page before it changes. Chained meta refresh redirects often impair history management, rendering the back button ineffective and potentially trapping users in repetitive loops or blocking access to prior pages. This breakage of standard controls heightens frustration, as users lose the ability to retrace their steps intuitively, a core expectation in web browsing. By triggering complete page reloads, meta refresh interrupts active user sessions, such as midway form submissions or extended scrolling, which can result in lost input data and abrupt halts to ongoing tasks. These reloads force the to discard transient states, compounding irritation for users immersed in interactive content. To mitigate these issues when meta refresh is deemed necessary, provide mechanisms for users to pause, extend, or disable the refresh, such as buttons or options implemented via . Use delays long enough to allow content consumption (e.g., at least 5-10 seconds where feasible) and incorporate prominent on-page warnings, such as timers or explanatory messages with manual links, enabling users to anticipate and control the transition.

Accessibility Challenges

Meta refresh directives often violate (WCAG) 2.2 success criteria, particularly by introducing non-adjustable timing and unsolicited changes in context. Specifically, they fail Success Criterion 2.2.1 (Timing Adjustable) because the refresh interval cannot be extended or paused by users with cognitive or visual disabilities who require more time to process content. They also fail Success Criterion 3.2.5 (Change on Request) by triggering redirects or reloads without explicit user initiation, which can confuse users relying on predictable navigation. Additionally, these elements fail Success Criterion 2.2.4 (Interruptions) when short delays cause abrupt content changes that cannot be postponed. However, instant redirects with a 0-second delay are generally acceptable, as they do not introduce perceivable timing limits or interruptions. For users of screen readers, meta refresh exacerbates these issues by resetting the reading position to the page's beginning upon reload, causing announcements of dynamic changes to be lost and forcing users to restart from the top. This disruption particularly affects blind users who may be midway through consuming content, leading to repeated loss of and increased during keyboard-based traversal. Mitigations for meta refresh are limited and infrequently implemented, as the directive inherently reloads the entire page, making targeted fixes challenging; however, developers can add user controls such as buttons to manually trigger refreshes or options to disable auto-updates, though these require supplementation. WCAG 2.2 (published in 2023) and related practices discourage meta refresh for dynamic content updates, recommending instead partial page modifications via live regions to announce changes without full reloads, ensuring assistive technologies can process updates in place. Preference is given to server-side or controlled client-side alternatives to maintain compliance and user control.

Limitations

Technical Drawbacks

Meta refresh demonstrates inconsistent support across browsers, particularly regarding the precision of specified delays. The HTML Living Standard allows for fractional seconds in the delay value, but many browsers ignore fractional parts and treat the time as an number of seconds, leading to variations in refresh timing. Furthermore, meta refresh fails to operate reliably within or . When embedded in an , the directive refreshes only the frame's content without affecting the parent document, and it lacks a mechanism to target or break out to the top-level window, often requiring for such behavior. In sandboxed , the refresh may be blocked entirely due to security restrictions on automatic features. From a resource perspective, meta refresh is inefficient as it enforces complete page reloads or navigations, consuming excess and extending load times without enabling partial content updates, unlike modern techniques such as or WebSockets. This full-reload approach amplifies network usage, especially for frequent auto-refreshes on data-heavy pages. Error handling for meta refresh is limited and user-unfriendly; malformed or invalid URLs in the attribute trigger silent failures, where the simply does not navigate and provides no visible feedback or diagnostic information to the user. Invalid delay formats similarly cause the refresh to be ignored without notification. Compatibility issues arise in stricter document types; while syntactically valid in 1.0 Strict, meta refresh is a feature that may cause validation warnings in tools enforcing strict conformance due to its non-standard status. Additionally, some web crawlers and proxies ignore meta refresh directives, treating them as non-authoritative since they rely on execution rather than responses.

SEO and Security Concerns

Meta refresh redirects pose several challenges for search engine optimization (), primarily due to how search engines interpret and handle them compared to server-side alternatives. Google treats instant meta refresh redirects (with a 0-second delay) as equivalent to permanent (301) redirects, allowing for the transfer of link equity to the target page. However, delayed meta refresh redirects (with a delay greater than 0 seconds) are interpreted as temporary (302) redirects, which dilutes link equity and can weaken the SEO value passed to the destination . This treatment can result in fragmented indexing, where search engines may prioritize the intermediate page over the intended content, potentially leading to the wrong material being indexed and reducing overall site authority. Additionally, the use of meta refresh for deceptive practices, such as —where different content is shown to users versus search engine crawlers—carries significant risks, including manual penalties or algorithmic demotions under Google's spam policies, as it violates guidelines against misleading search engines. Google's official documentation explicitly recommends against using meta refresh for redirects, advising server-side 301 redirects instead to ensure reliable crawling, better , and optimal performance. This stance aligns with broader guidelines, which discourage meta refresh for primary or core site functionality due to its potential to confuse crawlers and users alike. In modern tools, such as Google Lighthouse, meta refresh tags are flagged as poor practices in audits, signaling potential issues with automated page changes that could harm user trust and search rankings. As of 2025, these concerns persist, with audits often highlighting meta refresh as a suboptimal technique that may contribute to lower crawl efficiency and indirect ranking impacts. From a security perspective, meta refresh introduces vulnerabilities, particularly open redirects, where unvalidated or user-controlled URLs in the tag can redirect visitors to malicious sites, facilitating attacks by leveraging the trust of the originating domain. Attackers exploit this by injecting harmful URLs, tricking users into entering credentials or downloading on seemingly legitimate pages. Historically, in the 2000s, meta refresh was abused in malware distribution campaigns, where simple pages with refresh tags redirected users to exploit-laden sites, contributing to widespread drive-by infections. To mitigate these risks, developers must validate redirect URLs strictly and avoid dynamic insertion of meta refresh tags from untrusted inputs, though and security experts emphasize avoiding the tag altogether for high-risk navigation to prevent such exploits.

Alternatives

Server-Side Options

Server-side options provide robust alternatives to meta refresh by handling redirection and content updates directly at the server level, ensuring reliability across diverse client environments. The most common method for redirection involves HTTP status codes 301 (Moved Permanently) and 302 (Found, or temporary redirect), which instruct browsers and search engines to navigate to a new via server response headers. A 301 redirect signals that the resource has been permanently relocated, allowing search engines to transfer link equity and update their indexes accordingly, which enhances performance compared to methods like meta refresh. In contrast, a 302 redirect indicates a temporary shift, preserving the original in the browser's history and avoiding long-term implications. These redirects occur instantaneously upon receiving the server response, before any page content loads, unlike meta refresh which delays execution until the client parses the . Implementation typically involves configuring web server directives or scripting languages. For servers, .htaccess files can define redirects using the Redirect directive for 302 or RedirectMatch with a 301 status, such as Redirect 301 /old-page /new-page. In , the return directive achieves similar results, e.g., return 301 http://example.com/new-page;, applied within server blocks for precise URL matching. For dynamic scenarios, server-side languages like enable conditional redirects via the header() function, as in header("HTTP/1.1 301 Moved Permanently"); header("Location: http://example.com/new-page"); exit;, ensuring the status code precedes any output to avoid conflicts. These server-side redirects offer key advantages, including preservation of the browser's back button functionality without adding intermediate pages to the , improved through explicit signaling to crawlers, and independence from client-side processing, making them functional even if is disabled. For auto-refresh needs, server-side approaches lack a direct equivalent to refresh's full-page reload but support efficient content updates through techniques like server-push mechanisms or long-polling, often integrated with APIs for targeted delivery. [Server-Sent Events](/page/Server-Sent Events) (SSE) enable unidirectional server-to-client streaming over HTTP, allowing periodic pushes of updated without full page refreshes, as implemented via endpoints that set Content-Type: text/event-stream and use event and data fields. Long-polling, meanwhile, involves the client initiating a request that the server holds open until new data is available, reducing unnecessary polling overhead while emulating updates for dynamic like status dashboards. These methods prioritize API-driven partial updates over wholesale page reloads, enhancing performance and [user experience](/page/user experience) in applications requiring timely information refresh.

Client-Side Options

Client-side alternatives to meta refresh primarily leverage JavaScript to handle redirects and refreshes, offering greater flexibility and interactivity compared to static HTML meta tags. The window.location.href property can be assigned a new URL to initiate an immediate navigation, loading the specified document in the current browsing context. For delayed redirects, the setTimeout() method schedules the navigation after a specified interval in milliseconds, allowing developers to display interim content or messages before proceeding. To prevent the original page from being added to the browser's session history—similar to how meta refresh behaves—the window.location.replace() method can be used instead of assignment or assign(), replacing the current entry without enabling the back button to return to it. For auto-refresh functionality, provides the setInterval() method to periodically reload the page by invoking location.reload(), executing the callback at fixed intervals until cleared. This approach supports periodic updates but can be enhanced with the Fetch API to perform partial content updates via asynchronous HTTP requests, avoiding full page reloads and improving efficiency by only fetching and integrating new data into the DOM. Modern browser features extend these capabilities for more sophisticated applications. The HTML5 History API, particularly the history.pushState() method, enables single-page applications (SPAs) to manipulate the browser's URL and history stack without triggering full redirects or reloads, facilitating seamless navigation by updating the state object and URL dynamically. For real-time updates that supplant traditional auto-refresh mechanisms, WebSockets establish persistent, bidirectional communication channels between client and server, allowing servers to push data instantly without polling or interval-based refreshes. These JavaScript-based options provide key advantages over meta refresh, including enhanced user control—such as implementing pause or manual trigger buttons—and superior performance through targeted updates rather than complete page reloads. Polyfills, such as those emulating the History API in older browsers, ensure broader compatibility by backporting these features using techniques like hash fragments.

References

  1. [1]
    HTML Standard
    Summary of each segment:
  2. [2]
    <meta> http-equiv attribute - HTML - MDN Web Docs
    Jul 9, 2025 · The http-equiv attribute of the <meta> element allows you to provide processing instructions for the browser as if the response that returned the document ...
  3. [3]
    The META element in HTML (proposed)
    ### Summary of HTTP-EQUIV and Refresh from META Element
  4. [4]
    Meta element has no refresh delay[proposed] | ACT Rule | WAI - W3C
    The meta http-equiv="refresh" directive is an HTML tag used to instruct browsers to automatically refresh or reload a web page after a specified time interval.
  5. [5]
    Meta Tags and Attributes that Google Supports | Documentation
    This tag, commonly called meta-refresh, sends the user to a new URL after a certain amount of time, and is sometimes used as a simple form of redirection.
  6. [6]
  7. [7]
  8. [8]
    HTML Standard
    Summary of each segment:
  9. [9]
    28563 – As in most cases the http-equiv meta tags are equivalent to ...
    There is no spec defining the refresh header that I know of. Netscape made it up and no one ever standardized it. > Why would we not want the header to work ...
  10. [10]
    Netscape - Browser History
    Netscape Navigator (Netscape Communications®) = Index DOT Html/Css by Brian Wilson = ; 1.1, Apr. 1995, Final Release of version 1.1 ; 1.2B1, Jun. 1995, First Beta ...
  11. [11]
    META element in HTML
    Jan 5, 1998 · Netscape (and Other) Extension to META. Netscape browsers support META elements of the form: <META HTTP-EQUIV="Refresh" CONTENT="12; URL=http ...
  12. [12]
    Chapter 15 Netscape-Specific Extensions to HTML
    <HTML> <HEAD> <META HTTP-EQUIV="Refresh" CONTENT="30; URL=newpage.htm ... @ HTTP-EQUIV="Refresh" attribute tells Netscape to load a new page. The @ ...
  13. [13]
  14. [14]
  15. [15]
    HTML element: meta - http-equiv="refresh" - CanIUse
    "Can I use" provides up-to-date browser support tables for support of front-end web technologies on desktop and mobile web browsers.
  16. [16]
    X-XSS-Protection header - HTTP - MDN Web Docs
    Jul 4, 2025 · The HTTP X-XSS-Protection response header was a feature of Internet Explorer, Chrome and Safari that stopped pages from loading when they ...
  17. [17]
    H76: Using meta refresh to create an instant client-side redirect - W3C
    In HTML and XHTML, one can use the meta element with the value of the http-equiv attribute set to " Refresh " and the value of the content attribute set to "0" ...
  18. [18]
    Meta Redirect - Digital Nomads HQ
    Temporary redirection: If you need to inform users about updates or maintenance on a page, you can use a meta redirect to send them to another page after ...<|control11|><|separator|>
  19. [19]
    Meta Refresh - CSS-Tricks
    Oct 28, 2009 · The redirects to the provided URL in 5 seconds. Set to 0 for an immediate redirect. <meta http-equiv="refresh" content="5;url=http://example.com/" />Missing: extensions | Show results with:extensions
  20. [20]
    HTML redirect code: the meta refresh explained - Conductor
    The meta refresh element, placed in the <head> section, uses the code `<meta http-equiv="refresh" content="0; url=$URL">` to redirect after a set time.<|control11|><|separator|>
  21. [21]
    Redirects and Google Search | Documentation
    Instant meta refresh redirect: Triggers as soon as the page is loaded in a browser. Google Search interprets instant meta refresh redirects as permanent ...
  22. [22]
    Redirects using a Meta refresh - Sitebulb
    The Meta refresh is a simple on page redirect, and is usually used when it is not possible to implement a HTTP redirect. Search engines may not always follow ...
  23. [23]
    [PDF] A Taxonomy of JavaScript Redirection Spam - AIRWeb
    Legitimate uses of META refresh include reloading the contents of a dynamic web page such as a stock ticker, a database view, or weather map. The reload is ...
  24. [24]
    Chat Rooms which run Flat File Databases - PHPBuilder Forums
    Dec 13, 2001 · I am after a script for a chat room which runs on a Flat File Database uising PHP ... (META refresh) that simply reads a file and outputs it.
  25. [25]
    Banner ad Rotation - PHP Coding Help - PHP Freaks
    Often people will utilize an iframe and place the banner in the iframe, which can then have a simple meta refresh tag in the header of the code. Ajax ...
  26. [26]
    When to use AJAX and avoid the refresh / reload page issue [closed]
    Feb 25, 2013 · HTML5 push state changes the URL in the location bar of your browser, without reloading a whole new page. This makes it so you can give each ...if <meta> is deprecated for auto refreshing, what should i use?Dynamic content without page refresh and without AJAX? e.g. use ...More results from stackoverflow.com
  27. [27]
    HTML Techniques for WCAG 2.0 - W3C
    Mar 20, 2002 · Avoid using <META HTTP-EQUIV="refresh"> to refresh pages periodically. ... Also, IBM has a plug-in for Netscape and Internet Explorer that ...
  28. [28]
    Refresh Tag: What it is and Why it matters in SEO - Alli AI
    Jun 19, 2024 · Deprecation and Browser Support: Some browsers may limit the functionality of meta refresh tags as they are seen as outdated and non-standard.
  29. [29]
    Fixing Meta Refresh Redirects for Better SEO and Usability | Risify
    Fixing Meta Refresh ... user experience, which can lead to a higher bounce rate. How to Fix Meta Refresh Redirects? If your website is using meta refresh ...
  30. [30]
    F41: Failure of Success Criterion 2.2.1, 2.2.4, and 3.2.5 due to using ...
    meta http-equiv of refresh is often used to periodically refresh pages or to redirect users to another page. If the time interval is too short, and there is no ...
  31. [31]
    F41: Failure of Success Criterion 2.2.1, 2.2.4, and 3.2.5 due to using ...
    meta http-equiv of refresh is often used to periodically refresh pages or to redirect users to another page. If the time interval is too short, and there is no ...
  32. [32]
    meta-refresh - Accessibility Insights
    If a refresh causes input focus to move unexpectedly back to its original state, it can be especially frustrating for people who use screen readers and other ...Missing: issues | Show results with:issues
  33. [33]
    Accessibility Tips: Don't Use Meta Refresh with Time Limits
    Jul 12, 2023 · The HTML meta element can be used to automatically refresh content, but this may introduce accessibility barriers.Missing: HTML5 | Show results with:HTML5
  34. [34]
    Refresh header - HTTP - MDN Web Docs
    Jul 4, 2025 · It is exactly equivalent to using <meta http-equiv="refresh" content="..."> in HTML.
  35. [35]
    META REFRESH allowed in non-scriptable iframe sandbox ...
    One question ... it appears that Chrome still honours the Refresh HTTP header within an iframe sandbox without allow-scripts. Given that the meta refresh is ...
  36. [36]
    XHTML 1.0: The Extensible HyperText Markup Language (Second Edition)
    ### Summary on Meta Element and http-equiv Attribute in XHTML 1.0 Strict
  37. [37]
  38. [38]
    Google Warns Using Meta Refresh May Lead to Wrong Content ...
    Jul 10, 2018 · Google's John Mueller warns site owners using meta refresh that doing so may lead to the wrong content getting indexed.<|control11|><|separator|>
  39. [39]
    Meta Refresh Redirect: How to Detect and Fix the Issue
    Nov 17, 2020 · A “meta refresh redirect” is a type of forwarding that uses an HTML meta tag to instruct a web browser to automatically refresh or redirect to another URL ...
  40. [40]
    The Cash Factory | Securelist
    Oct 9, 2009 · All the pages linked to contained a one line HTML file with a META refresh tag. This tag was used to redirect the user to a different site ...
  41. [41]
    Securing Meta Tags: Preventing Clickjacking, XSS, and Other ...
    Misconfigured meta tags can lead to severe vulnerabilities, including XSS attacks and redirections. Explore best practices for securing meta tags and ...Missing: patches | Show results with:patches
  42. [42]
    Redirects: How To Use, SEO Impact & Types (301 vs 302) - Moz
    While meta refresh redirects pass some link equity, they weaken SEO performance due to slow usability and reduced link equity transfer.
  43. [43]
    A Guide to Redirect Types - 301, 302, JavaScript, Meta ... - Lumar
    Feb 7, 2019 · 301 redirects should be used for the purposes of consolidating incoming links, preventing dead ends within a site and for preserving link equity.
  44. [44]
    How To Create Temporary and Permanent Redirects with Apache ...
    Mar 17, 2022 · This guide will discuss the different use cases for these techniques, and how to accomplish them in Apache and Nginx, the two most common web servers.
  45. [45]
    How to Redirect a Page with HTTP 301 in PHP - SysTutorials
    The header(“HTTP/1.1 301”) part must be used before the location part, otherwise PHP will automatically set the status code to HTTP/1.1 302 Found. Read more:.Missing: implementing | Show results with:implementing
  46. [46]
    What is Long Polling and How Does it Work? - PubNub
    Sep 26, 2023 · Long polling is a backend server push communication technique to emulate real-time interaction over HTTP, typically in web applications lacking WebSocket or ...
  47. [47]
    What is HTTP Long Polling - and is it still relevant today?
    May 8, 2025 · So, is HTTP long polling a good solution? When it comes to enabling servers to push data to web clients, HTTP long polling is a workaround.
  48. [48]
    Location: href property - Web APIs | MDN
    Nov 26, 2023 · The href property of the Location interface is a stringifier that returns a string containing the whole URL, and allows the href to be updated.
  49. [49]
    Window: setTimeout() method - Web APIs | MDN
    Aug 20, 2025 · The setTimeout() method of the Window interface sets a timer which executes a function or specified piece of code once the timer expires.setInterval() method · clearTimeout() method · setImmediate() method
  50. [50]
  51. [51]
    Using the Fetch API - MDN Web Docs
    Aug 20, 2025 · The Fetch API provides a JavaScript interface for making HTTP requests and processing the responses. Fetch is the modern replacement for XMLHttpRequest.WorkerGlobalScope.fetch() · Headers · Response · RequestMissing: partial | Show results with:partial
  52. [52]
    History: pushState() method - Web APIs | MDN
    Jun 23, 2025 · The `pushState()` method adds an entry to the browser's session history stack, similar to `window.location = "#foo"` but with advantages.replaceState() method · History: go() method · Back()
  53. [53]
    The WebSocket API (WebSockets) - Web APIs - MDN Web Docs
    Sep 9, 2025 · The WebSocket API enables two-way communication between a browser and server, sending messages and receiving responses without polling.Writing WebSocket client... · Writing WebSocket servers · Streams API concepts
  54. [54]
    What are the benefits of using meta tag/JavaScript redirection over ...
    Mar 6, 2017 · Both JavaScript redirects and meta refreshes will allow a delay before the redirect. If you want to show a message that the user will barely ...
  55. [55]
    html5-history-api - NPM
    Apr 15, 2018 · This Javascript library provides an emulation of HTML5 History API for older browsers. The library operates according to W3C specification ...