복구 CORS 에러 발생 이유 및 해결책
페이지 정보
작성자 운영자쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글 0건 조회 93회 작성일 24-10-11 11:43본문
CORS?
Cross Origin Resource Sharing
CORS는 한 도메인 또는 Origin의 웹 페이지가 다른 도메인 (도메인 간 요청)을 가진 리소스에 액세스 할 수 있게하는 보안 메커니즘이다.
CORS는 서버와 클라이언트가 정해진 헤더를 통해 서로 요청이나 응답에 반응할지 결정하는 방식으로 CORS라는 이름으로 표준화 되었다. CORS는 최신 브라우저에서 구현된 동일 출처 정책(same-origin policy) 때문에 등장했다.
그런데 동일한 서버에 자원(폰트, ajax 파일)을 읽어오는데 CORS에러가 발생한다면...
그 이유는 도메인 앞에 www가 있고 없고 차이때문에 생긴다. 자원은 www로 호출하고 브라우저 주소에는 www가 없을때....
해결책1> .htaccess 파일을 작성해서 계정 root 폴더에 넣으면 된다.
RewriteCond %{HTTP_HOST} !^www\.test\.com$ [NC]
RewriteCond %{HTTP_HOST} !^$
RewriteRule ^(.*)$ http://www\.test\.com/$1 [L,R]
만약 도메인이 co.kr일때는 "www\.test\.co\.kr"처럼 .앞에 \기호를 넣어주면 된다.
해결책2> 시작 페이지(index 파일) 상단에 한줄만 추가해 주면된다.
<?php
if($_SERVER['HTTP_HOST'] == "test.com") header("Location: http://www.test.com");
?>
이것때문에 2틀이나 붙들고 있었던 기억이...ㅠㅠ
댓글목록
등록된 댓글이 없습니다.