메타 리프레시

Meta refresh

메타 리프레쉬(meta refresh)는 웹 브라우저에 지정된 시간 간격 후에 HTMLmeta 요소를 사용하여 현재 웹 페이지 또는 프레임을 자동으로 새로 고치도록 지시하는 방법이다.http-equiv"로 설정된 매개 변수refresh" 및 acontent시간 간격(초)을 제공하는 매개 변수.에 대체 URL을 포함시켜 페이지가 새로 고쳐질 때 브라우저에 다른 URL을 가져오도록 지시할 수도 있다.content매개 변수새로 고침 시간 간격을 0(또는 매우 낮은 값)으로 설정하면 URL 리디렉션 방법으로 메타 새로 고침을 사용할 수 있다.

역사

이 기능은 원래 Netscape Navigator 1.1 (circa 1995)에 의해 HTTP 헤더와 해당 HTML의 형태로 도입되었다.meta문서 작성자가 클라이언트에게 문서를 자동으로 다시 로드하거나 지정된 시간 초과 후 지정된 URL로 변경하도록 신호를 보낼 수 있는 HTTP 등가 요소.[1]이것은 에서[citation needed] 이용 가능한 가장 초기 투표 메커니즘으로, 사용자가 주가나 일기 예보와 같이 자주 바뀌는 웹페이지에서 최신 업데이트를 볼 수 있다.

사용성

월드 와이드컨소시엄(W3C)은 예상치 못한 업데이트/교체를 통해 사용자의 방향성을 흐트러뜨릴 수 있기 때문에 메타 업데이트/교체 사용이 금지된다.[2]대부분의 최신 브라우저가 이를 보완하지만(Internet Explorer 7 이상, Mozilla Firefox, Opera, Google Chrome 포함) 메타 리프레시는 일부 브라우저(Internet Explorer 6 및 이전)에서 웹 브라우저의 "뒤로" 버튼을 손상시킨다.

동적 페이지에 대한 업데이트를 제공하거나 JavaScript가 없는 웹사이트의 사이트 제어식 네비게이션 구현과 같은 메타 리프레쉬의 합법적인 사용이 있다.많은 대형 웹 사이트는 특히 JavaScript와 리디렉션 헤더의 종속성이 원하지 않는 경우 이를 사용하여 뉴스 또는 상태 업데이트를 새로 고친다.

안쪽에 놓아라<head>5초 후 페이지를 새로 고치는 요소:

<변형시키다 http-equiv="refresh" 내용물="5"> 

로 리디렉션https://example.com/5초 후:

<변형시키다 http-equiv="refresh" 내용물="5; url=https://example.com/"> 

로 리디렉션https://example.com/즉시:

<변형시키다 http-equiv="refresh" 내용물="0; url=https://example.com/"> 

단점

메타 새로 고침 태그에는 다음과 같은 몇 가지 단점이 있다.

  • 페이지가 너무 빨리 리디렉션되는 경우(2-3초 미만) 다음 페이지의 "뒤로" 단추를 사용하면 일부 브라우저가 리디렉션 페이지로 다시 이동하게 되고 리디렉션 시 다시 발생할 수 있다.이것은 마지막 웹사이트에서 독자를 "걸리게" 할 수 있기 때문에 사용성에 좋지 않다.
  • 독자는 다른 페이지로 리디렉션되는 것을 원하거나 원하지 않을 수 있으며, 이로 인해 사용자의 불만이 생기거나 보안에 대한 우려가 제기될 수 있다.[3]

대안

메타 새로 고침은http-equiv에뮬레이트하기 위한 메타 태그Refresh HTTP 헤더와 마찬가지로 HTTP 웹 서버에 의해 헤더로 전송될 수도 있다.비록 ~일지라도RefreshHTTP 표준의 일부가 아니며, 모든 공통 브라우저에서 지원된다.

재연결의 HTTP 헤더 예제https://example.com/5초 후:

새로 고침: 5; url=https://www.example.com/

메타 리프레시의 두 가지 용도 모두에 대안이 존재한다.

리디렉션용

대안은 HTTP 301 또는 302와 같은 HTTP 리디렉션 상태 코드를 보내는 것이다.사용자 에이전트를 다른 페이지로 리디렉션하는 것이 선호되는 방법이다.이것은 웹 서버의 특별한 규칙이나 웹 서버의 간단한 스크립트를 통해 달성될 수 있다.

사용자가 브라우저에서 JavaScript를 사용하지 않도록 설정했을 수 있기 때문에 JavaScript는 다른 대안이지만 권장되지는 않는다.

JavaScript 리디렉션의 가장 간단한 방법은onload의 재산.body태그:

<보디 짐을 싣다="process.location = 'http://example.com/'">  <!-- 여기에 있는 당신의 내용은 -->  </보디> 

새로 고침용

다른 방법은 사용자가 언제 내용을 새로 고칠지 선택할 수 있도록 버튼과 같은 상호작용 장치를 제공하는 것이다.또 다른 옵션은 Ajax와 같은 기술을 사용하여 페이지 전체를 새로 고칠 필요 없이 웹 사이트를 업데이트(부분)하는 것이지만, 이것은 또한 사용자가 브라우저에서 JavaScript를 사용하도록 해야 할 것이다.

JavaScript location.reload 방법을 사용하여 웹 페이지를 새로 고칠 수 있다.이 코드는 이벤트나 사용자가 링크를 클릭할 때 자동으로 호출될 수 있다.마우스 클릭을 사용하여 웹 페이지를 새로 고치려면 다음 코드를 사용하십시오.

<a href="location.location.location(true)">이 페이지 새로 고침.

참조

  1. ^ "An Exploration of Dynamic Documents". Netscape Communications Corporation. Archived from the original on 2002-01-24. Retrieved 2020-04-24.
  2. ^ Web Content Accessibility 가이드라인 1.0 - W3C Note 6 2000년 11월
  3. ^ 메타 새로 고침 태그, 페이지 재로드 또는 리디렉션에 대한 태그 사용에 대한 About.com 기사

외부 링크