>웹 프론트엔드 >JS 튜토리얼 >JavaScript를 사용하여 URL을 리디렉션하는 방법

JavaScript를 사용하여 URL을 리디렉션하는 방법

清浅
清浅원래의
2019-01-16 15:23:054728검색

window.location 개체는 일반적으로 서버 구성 및 http 헤더 속성을 사용하는 JavaScript 작업을 사용하여 URL을 새 위치로 리디렉션할 수 있습니다.

JavaScript를 사용하여 URL을 리디렉션하는 방법

웹 페이지의 많은 URL은 일반적으로 서버 구성 및 HTTP 헤더 속성을 사용하여 새 위치로 리디렉션됩니다. 그러나 대부분의 경우 JavaScript를 사용하여 다른 URL로 리디렉션하거나 탐색해야 할 수도 있습니다.

리디렉션 이유:

일반적으로 새 페이지나 URL로 리디렉션하려는 이유는 다음과 같습니다.

도메인 또는 URL 구조 변경

사용자가 양식을 제출했지만 순서대로 다음 페이지로 이동하려고 함

페이지에 승인이 필요할 수 있음

HTTP에서 HTTPS로 리디렉션

단일 페이지에서 트리거 필요 애플리케이션 새 페이지 등

window.location은 개체 관리 브라우저가 로드되는 주소입니다. 위치 객체 조작은 JavaScript를 사용하여 페이지 리디렉션을 관리하는 방법입니다. 위치 개체에는 JavaScript 페이지 리디렉션을 트리거하는 속성과 메서드가 있습니다.

위치 개체 속성:

hash: 단일 페이지 애플리케이션 및 단일 페이지 웹 사이트에 사용됨

host: URL의 도메인 이름

hostname: 유사 호스트

href: 전체 URL

origin: URL의 프로토콜 및 도메인

pathname: 원래 URL 슬러그 또는 페이지

port: 포트가 URL에 포함된 경우

protocol: http, https, ftp, ftps 등

이러한 속성은 각각 문자열이며 모든 표준 문자열 메서드를 지원합니다.

위치 개체 메서드는 다음과 같습니다.

할당: 위치 개체를 새 URL로 설정

reload: 페이지 강제 실행 동일한 URL로 다시 로드

대체: 리디렉션 트리거

search: queryString

을 허용하여 새 주소로 리디렉션

주소를 변경한 후에는 301 리디렉션을 수행해야 합니다. 이곳은 서버가 새 주소와 함께 HTTP 상태 코드 301을 보내는 곳입니다.

301 상태 코드는 사용자 에이전트에게 브라우저 또는 검색 엔진 스파이더에게 새 주소가 있음을 알려줍니다.

301 리디렉션을 사용하면 트래픽을 유지할 수 있고 희망적으로 귀하의 검색 엔진 순위.

일반적으로 이 작업은 서버에서 수행됩니다. 그러나 때로는 이것이 불가능할 때도 있고 JavaScript를 사용하여 URL로 리디렉션해야 합니다.

구현 코드:

window.location.assign("new target URL");
window.location.replace("new target URL");

가장 좋은 방법은 location.replace 메소드를 사용하는 것입니다. 이는 다음을 포함하여 모든 301 리디렉션 시나리오에 유용합니다. HTTP에서 HTTPS로 리디렉션이 필요합니다. 그러나 JavaScript를 사용하여 HTTP에서 HTTPS로 리디렉션하는 더 깔끔한 방법은 다음 코드 조각입니다.

 if (location.protocol !== "https:"){
location.replace(window.location.href.replace("http:", 
"https:"));}

window.location 개체의 속성과 메서드는 JavaScript를 사용하여 다른 URL로 리디렉션하도록 조작할 수 있습니다. 그 중 location.replace와 location.sign은 매우 유용합니다. 교체 방법은 세션 기록을 깔끔하게 유지하며, 할당 방법을 사용하면 사용자가 URL 기록을 통해 역추적할 수 있습니다

위 내용은 JavaScript를 사용하여 URL을 리디렉션하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.