Chrome에서 동일한 출처 정책을 사용 중지합니다.


1571

Google Chrome 브라우저 에서 동일 출처 정책 을 사용 중지 할 수있는 방법이 있습니까?


1
peter.sh/experiments/chromium-command-line-switches 도 참조하십시오. 그 신뢰성은 확실하지 않지만 자동화 된 프로세스에 의해 생성 된 컬렉션 인 것 같습니다
CSSian

1
chromium.orgpeter.sh페이지에 연결 되므로 합법적이어야합니다.
Benjineer

2
개발에만 사용하더라도 SOP를 비활성화하는 것은 위험합니다. 이 방법으로 브라우저를 시작하면 아마도 앱을 열뿐만 아니라 메일을 확인하고 SO를 읽어보십시오… 웹 프록시와 같은 더 나은 대안을 사용하여 이러한 문제를 해결하는 것을 고려하십시오. 예를 들어 proxrox : github.com/bripkens/proxrox
BenR

29
버전 49 --disable-web-security --user-data-dir
부터이

3
grunt run server를 사용하여 개발자 환경에서이 작업을 수행하는 방법에 대한 조언을 원하는 사람은 다음을 참조하십시오. gist.github.com/Vp3n/5340891
GrayedFox

답변:


1036

크롬 (또는 크롬)을 닫고 --disable-web-security인수로 다시 시작하십시오 . 방금 이것을 테스트하고 "localhost"(크롬 5 / 우분투에서 테스트)에서 제공되는 페이지에 src = "http://google.com"이 포함 된 iframe의 내용에 액세스 할 수 있는지 확인했습니다. 나를 위해 정확한 명령은 다음과 같습니다.

참고 : 명령을 실행하기 전에 모든 크롬 인스턴스를 종료하십시오.

chromium-browser --disable-web-security --user-data-dir="[some directory here]"

브라우저가 처음 열릴 때 "지원되지 않는 명령 줄을 사용하고 있습니다"라는 경고 메시지를 표시합니다.

크롬 소스에서 :

// Don't enforce the same-origin policy. (Used by people testing their sites.)
const wchar_t kDisableWebSecurity[] = L"disable-web-security";

Chrome 48 이전에는 다음을 사용할 수 있습니다.

chromium-browser --disable-web-security

115
OS X에서이를 수행하는 방법은 무엇입니까?
랜던 쿤

14
@ landon9720에 의해 대답을 참조 ectype을 .
ANeves

8
@Berty 크롬을 닫고 태그없이 엽니 다. Chrome은 해당 태그로 열린 경우 에만 해당 모드에 있습니다.
Nick

84
@ landon9720 Chrome 닫기, 터미널 열기, 유형open /Applications/Google\ Chrome.app --args --disable-web-security
Seanonymous

17
Chrome 48 및 49에는 추가 --user-data-dir해야합니다.
Jacob Lauritzen

1069

네. OSX의 경우 터미널을 열고 다음을 실행하십시오.

$ open -a Google\ Chrome --args --disable-web-security --user-data-dir

--OSX의 Chrome 49 이상에 --user-data-dir 필요

Linux의 경우 :

$ google-chrome --disable-web-security

또한 AJAX 또는 JSON과 같은 개발 목적으로 로컬 파일에 액세스하려는 경우에도이 플래그를 사용할 수 있습니다.

-–allow-file-access-from-files

Windows의 경우 명령 프롬프트로 이동하여 Chrome.exe가있는 폴더로 이동 한 다음

chrome.exe --disable-web-security

동일한 출처 정책을 비활성화하고 로컬 파일에 액세스 할 수 있어야합니다.

업데이트 : Chrome 22 이상에서는 다음과 같은 오류 메시지가 표시됩니다.

지원되지 않는 명령 줄 플래그 인 --disable-web-security를 ​​사용하고 있습니다. 안정성과 보안 문제가 발생합니다.

그러나 개발하는 동안 해당 메시지를 무시할 수 있습니다.


7
그냥 PC (크롬 29)에 이것을 시도하고 난 여전히이 사랑스러운 기원을 받고 있어요 *** 액세스에 의해 허용되지 않습니다 ...
Sam

23
@Sam 모든 크롬 프로세스를 닫았는지 확인한 다음 다시 시도하십시오. "지원되지 않는 명령 줄 플래그를 사용하고 있습니다 : --disable-web-security. 안정성과 보안 문제가 발생합니다."
Morten Haraldsen

2
오류 메시지가 나타나지 않도록하는 방법이 있습니까? 키보드 나 마우스없이 디지털 월 보드에서이 플래그를 사용하고 있습니다.
Bart van Heukelom

64
그리고 --disable-web-security명시 적으로을 제공하지 않으면 분명히 작동하지 않습니다 --user-data-dir. 즉, OSX /Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --disable-web-security --user-data-dir=~/ChromeUserData/.
WiseOldDuck

20
모든 Chrome 프로세스를 먼저 닫을 필요는 없습니다. 사용할 수 있습니다 open -n. 간단하게 실행하십시오 open -n -a Google\ Chrome --args --disable-web-security --user-data-dir=/tmp/chrome. 그러면 Mac에서 두 번째 Chrome 앱 인스턴스가 열리고 나란히 사용할 수 있습니다.
Pellmeister

519

Windows 사용자의 경우 :

여기에 허용 된 솔루션의 문제는 이미 Chrome을 열어두고 실행하려고하면 작동하지 않는다는 것입니다.

그러나 이것을 조사 할 때 슈퍼 유저에 대한 게시물을 보았습니다. 웹 보안 유무에 관계없이 Chrome을 실행할 수 있습니까?.

기본적으로 다음 명령을 실행하거나 명령으로 바로 가기를 만들고 Chrome을 열어서

chrome.exe --user-data-dir="C:/Chrome dev session" --disable-web-security

다른 "보안"브라우저 인스턴스를 열어 놓고 정상적으로 작동하는 것과 동시에 새로운 "안전하지 않은"Chrome 인스턴스를 열 수 있습니다. 중요 : C:/Chrome dev session두 번째 시간 --disable-web-security이 작동하지 않으므로 창을 열 때마다 폴더를 삭제 / 삭제하십시오 . 따라서 변경 사항을 저장 한 다음을 사용하여 안전하지 않은 두 번째 Chrome 인스턴스로 다시 열 수 없습니다 --disable-web-security.


17
정말 고마워 덕분에 독립적 인 응용 프로그램으로 웹 페이지를 시작할 수있었습니다"C:\..\chrome.exe" --disable-web-security --user-agent="Android" --user-data-dir="C:/temp-chrome-eng" --app="file:///C:/apps/index.html"
Elvis Ciotti

2
로컬 컴퓨터의 API에 대해 개발을 시도 할 때 필요한 것입니다.
generalopinion

4
이것은 치료를했습니다. 또한 보안이 켜져 있고 정상적으로 작동하는 크롬의 정상적인 인스턴스를 남겼습니다. Chrome이 작동 할 때주의 할 점은 "안정성 및 보안 문제가 발생할 것"이라는 알림을 표시합니다.
etoxin

1
Mac에서 어떻게해야합니까? 을 사용하려고 시도 open -a Google\ Chrome --args --disable-web-security -–allow-file-access-from-files --user-data-dir="/Users/myuser/temp/chromeData"했지만 기존 크롬 창에 포커스가 생겼습니다.
user3648895

17
이 명령은 두 번째 인스턴스를 시작하여 OSX에서 작동합니다. open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/chrome_dev_session" --disable-web-security (temp 폴더를 먼저 만들어야 할 수도 있습니다)
chilltemp

160

들어 윈도우 :

  1. 시작 메뉴를 엽니 다
  2. 타입 windows+R 하거나 "실행"을 엽니 다
  3. 다음 명령을 실행하십시오.

    chrome.exe --user-data-dir="C://Chrome dev session" --disable-web-security

대한 :

  1. 터미널로 이동
  2. 다음 명령을 실행하십시오.

    open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/Chrome dev session" --disable-web-security

새로운 웹 보안 비활성화 크롬 브라우저가 다음 메시지와 함께 열립니다.

여기에 이미지 설명을 입력하십시오


7
@ downvoters는 downvote의 답이 없기 때문에 downvote의 이유를 언급하십시오
GSB

1
Windows 10에서 나에게 잘 맞았으며 다른 Chrome 인스턴스도 닫을 필요가 없었습니다.
Nick M

이것은 Windows 10에서 작동했습니다. 다른 곳에서 보았지만 Windows 대신 명령 줄에서 실행한다고 말합니다 Run.
chidimo

잘 작동합니다 .IE, Edge에 어떻게 사용할 수 있습니까!
Jason Brody

이것은 잘 작동합니다. 나는 몇 시간 동안이 CORS 문제를 겪었고 이것을 발견했습니다.
Achintha

78

Chrome 버전 60.0.3112.78 (솔루션이 테스트되고 작동 한 날) 이상이고 오늘 19.01.2019 (ver. 71.0.3578.98)까지 Windows 사용자의 경우 . 당신은 하지 않는 어떤 크롬 인스턴스를 종료해야합니다.

  1. 바탕 화면에 바로 가기 만들기
  2. 바로 가기를 마우스 오른쪽 버튼으로 클릭하고 속성을 클릭하십시오.
  3. 대상 속성 편집
  4. 로 설정 --disable-웹 보안 --user-데이터 DIR = "C : / ChromeDevSession": "\ Program 파일 (x 86) \ 구글 \ 크롬 \ 응용 프로그램 \ chrome.exe의 C"
  5. 크롬을 시작하고 --disable-web-security가 지원되지 않는다는 메시지를 무시 하십시오!

IT 관리자가 해킹 당할 수 있기 때문에이 특정 브라우저 인스턴스를 브라우징에 사용하지 마십시오!


매력처럼 일했다. Chrome에서 개발자가 새 세션을 시작하지 않고이 기능을 사용 중지 할 수 없다고 생각합니다. 적어도 그들은 방법이 있습니다.
FearlessFuture

소스 코드에서 여전히 크롬 디버깅을 사용할 수 있습니까?
Righto

방금 테스트 한 후에도이 모드에서 dev 도구를 사용할 수 있습니다.
KuN

이 솔루션은 여전히 ​​크롬 버전 71부터 작동합니다. 정말 감사합니다!
Motoman

72.0.3626.109에서 작동합니다. 많은 도움이되었습니다!
Pavel Molchanov 2019

76

편집 3 : 확장 프로그램이 더 이상 존재하지 않는 것 같습니다 ... 일반적으로 CORS를 해결하기 위해 별도의 디렉토리로 다른 Chrome 버전을 설정 하거나 https://addons.mozilla.org/en-US/ firefox / addon / cors-every // 대신

편집 2 : 더 이상 일관되게 작동하도록 할 수 없습니다.

편집 : 다른 프로젝트에 다른 요일을 사용하려고 시도했지만 작동이 중지되었습니다. 확장 프로그램을 제거했다가 다시 설치하면 기본값이 재설정됩니다.

원래 답변 :

Chrome을 다시 시작하고 웹 개발을 사용 중지하고 싶지 않았습니다 (개발 중 탐색 중이었기 때문에).이 Chrome 확장 프로그램을 우연히 발견했습니다.

Chrome 웹 스토어 허용 제어 허용 출처 : *
(https://chrome.google.com/webstore/detail/allow-control-allow-origi/nlfbmbojpeacfghkpbjhddihlkkiljbi?hl=ko)

기본적으로 Allow-Access-Origin-Control 검사를 켜고 끄는 작은 토글 스위치입니다. 내가하고있는 일에 완벽하게 작동합니다.


1
내 확장이 교차 도메인에 액세스해야하므로 확장을 달성하고 통합하는 방법 disable-web-security에서 사용자가 브라우저를 열도록 강요 할 수 없습니다
코드 기반

1
이 확장명은 불행히도 로컬 파일에서는 작동하지 않습니다. --disable-web-security이 경우 스위치 를 사용하십시오 .
bryc

2
@bryc 그것은 실제로 의미가 없습니다. --allow-file-access-from-files모든 웹 보안을 비활성화 하는 대신 사용할 수 있습니다 .
Coburn

1
경고! 일부 사이트에서는이 확장 기능을 사용하여 로그인 할 수 없습니다! 예를 들어 Firebase 콘솔.
campsjos

1
“확장자가 더 이상 존재하지 않습니다.”답을 삭제하거나 적어도 편집 3을 굵게 표시 할 수 있습니다
Michael Freidgeim

48

위의 솔루션 중 실제로 작동하지 않는 것 같습니다. --disable-웹 보안은 더 이상 최근 크롬 버전에서 지원되지 않습니다.

Allow-Control-Allow-Origin : *-크롬 확장은 부분적으로 문제를 해결했습니다. 요청이 GET 메소드를 사용하고 있고 사용자 정의 HTTP 헤더가없는 경우에만 작동합니다. 그렇지 않으면 크롬은 비행 전 요청으로 OPTIONS HTTP 요청을 보냅니다. 서버가 CORS를 지원하지 않으면 404 HTTP 상태 코드로 응답합니다. 플러그인이 응답 HTTP 상태 코드를 수정할 수 없습니다. 따라서 크롬은이 요청을 거부합니다. 크롬 플러그인이 현재 크롬 확장 API를 기반으로 응답 HTTP 상태 코드를 수정할 수있는 방법이 없습니다. 그리고 XHR에서 시작한 요청에 대해서도 리디렉션을 수행 할 수 없습니다.

Chrome이 왜 개발자의 삶을 어렵게 만드는지 잘 모르겠습니다. 개발 용도로도 불필요하게 XSS 보안 검사를 비활성화하는 모든 가능한 방법을 차단합니다.

며칠의 노력과 연구 끝에 하나의 솔루션이 완벽하게 작동합니다 . corsproxy 를 사용하는 입니다. 여기에는 두 가지 옵션이 있습니다. 1. [ https://cors-anywhere.herokuapp.com/] 사용 2. 로컬 상자에 corsproxy를 설치하십시오 . npm install -g corsproxy

[2018 년 6 월 23 일 업데이트] 최근 corsproxy를 다시 사용해야하는 SPA 앱을 개발 중입니다. 그러나 github의 corsproxy 중 어느 것도 내 요구 사항을 충족시킬 수없는 것 같습니다.

  • 보안상의 이유로 방화벽 내부에서 실행해야합니다. 사용할 수 없습니다 https://cors-anywhere.herokuapp.com/을 .
  • 크롬은 https 페이지에서 no-https 아약스 요청을 차단하므로 https를 지원해야합니다.
  • nodejs에서 실행해야합니다. 다른 언어 스택을 유지하고 싶지 않습니다.

그래서 nodejs를 사용하여 자체 버전의 corsproxy를 개발하기로 결정했습니다. 실제로 매우 간단합니다. 나는 그것을 github에 요점으로 출판했다. 다음은 소스 코드 요지입니다. https://gist.github.com/jianwu/8e76eaec95d9b1300c59596fbfc21b10

  • 추가 종속성없이 일반 nodejs 코드에 있습니다.
  • http 및 https 모드에서 (명령 행에서 https 포트 번호를 전달하여) https를 실행하려면 cert 및 키를 생성하여 webroot 디렉토리에 저장해야합니다.
  • 정적 파일 서버 역할도합니다
  • 비행 전 OPTION 요청도 지원합니다.

CORSProxy 서버 (http 포트 8080)를 시작하려면 node static_server.js 8080

프록시에 액세스하려면 : http : // host : 8080 / http : //www.somesite.com


그 정도까지 가려면 원하는 웹 페이지에서 내용을 가져 오는 웹 서버를 로컬 또는 원격으로 호스팅 한 다음 적절한 CORS 헤더를 설정할 수 있습니다.
Coburn

나는이 경로를 전에 생각했다. 그러나 이것은 약간의 코딩이 필요합니다. 특히 필자의 경우 다른 도메인에서 시작된 여러 서비스를 호출해야합니다. 따라서 다른 URL 패턴을 다른 도메인에 매핑해야합니다. 이것이 바로 corsproxy가 우리에게 한 일입니다. 그리고 그것은 완벽하게 작동합니다.
Jianwu Chen

4
사실이 아닙니다 .. 승인 된 답변에 언급 된 방법이 저에게 효과적이었습니다. 언급 한 바와 같이 Chrome 49 이후의 명령 인 'chrome.exe --disable-web-security --user-data-dir'이 저에게
효과적

2
Chromium 53, --disable-web-security --user-data-dir이 작동하지 않음
Dark Star1

4
53 이상에서는 실제 디렉토리와 다른 고유 한 사용자 데이터 디렉토리를 실제로 제공해야합니다. 안전하지 않은 환경에 대한 새 프로필이 생성됩니다. --user-data-dir은 위의 Olas answer에서와 같이 설정해야합니다. 실제로 원한다면 실제 일반 사용자 프로필 폴더와 동일하게 설정할 수 있지만 해당 모드에서 일반 브라우징을 시작하면 일반 프로필이 우발적 공격에 노출 될 수 있으므로 권장하지 않습니다.
lassombra

45

Windows의 경우 ... 바탕 화면에 Chrome 단축키를 만듭니다.
마우스 오른쪽 버튼으로 클릭> 속성> 바로 가기
"대상"경로 편집 :

"C:\Program Files\Google\Chrome\Application\chrome.exe" --args --disable-web-security

( 'C : .... \ chrome.exe'를 크롬이있는 위치로 변경하십시오.)

et voilà :)


오늘 08/27/20013 현재 나에게 도움이되어 로컬 호스트에서 Ajax를 수행 할 수 있습니다.
molokoloco

카나리아 버전 (53) : "--disable-웹 보안을 당신은 지원되지 않는 명령 행 태그를 사용하는"있어요
khoailang

4
@khoailang 당신은 여전히 ​​스위치를 사용할 수 있습니다. 이 경고는 Google의 불안 전쟁의 일부입니다 (좋은 일). 또한 55+ 버전부터 --user-data-dir = <여기의 다른 디렉토리>도 사용해야하므로 Google은 안전하지 않은 규칙을 일반 프로필과 혼합하지 않기를 바랍니다.
lassombra

43

Mac 터미널에서이 명령을 시도하십시오

open -n -a "Google Chrome" --args --user-data-dir=/tmp/temp_chrome_user_data_dir http://localhost:8100/ --disable-web-security 

보안이 비활성화 된 다른 크롬 인스턴스가 열리고 더 이상 CORS 문제가 없습니다. 또한 더 이상 다른 크롬 인스턴스를 닫을 필요가 없습니다. localhost URL을 자신의 것으로 변경하십시오.


위의 대부분의 명령 줄 답변은 macOS에서 나에게 아무런 도움이되지 않았습니다. 그러나이 게시물 alfilatov.com/posts/run-chrome-without-cors 와 열린 명령 줄이 저에게 효과적 이었습니다. 위의 명령과 동일하므로 투표합니다.
Max MacLeod

40

가장 좋은 방법은 Windows 바탕 화면에 Chrome 또는 Chrome Canary 단축키를 복제하는 것입니다. 이 단축키의 이름을 "NO CORS"로 바꾼 다음 해당 단축키의 속성을 편집하십시오.

대상 --disable-web-security --user-data-dir="D:/Chrome"에서 대상 경로의 끝에 추가하십시오 .

목표는 다음과 같아야합니다.

업데이트 : 새 플래그가 추가되었습니다.

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="D:/Chrome"

여기에 이미지 설명을 입력하십시오


이것은 단지 비행 전 오류 대신 404를줍니다
L1ghtk3ira

404 오류는 Google Chrome 오류가 아닌 서버 관련 오류입니다.
etoxin

2
@etoxin이 답변은 최신 버전의 Chrome에서 더 이상 유효하지 않습니다. --disable-web-security --user-data-dir = "D : / Chrome"을 추가해야합니다
Vignesh S

29

현재 최신 크롬 버전 (83.0.4103.61 (공식 빌드) (64 비트))을 사용하여 테스트에서 작동하게하는 유일한 방법은 아래 플래그를 사용하여 크롬을 시작하는 것입니다 ( D : \ temp 를 원하는대로 변경하십시오 ) . 이 솔루션은 테스트 용 샌드 박스로 Chrome을 시작하며 기본 크롬 프로필에 영향을 미치지 않습니다.

--disable-site-isolation-trials --disable-web-security --user-data-dir = "D : \ temp"

Windows에서 시작 버튼을 클릭 한 다음 아래를 복사하여 붙여 넣습니다.

chrome.exe  --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"

5
이것은 유일한 해결책입니다. 나는 이것을 실행 한 chrome.exe --disable-site-isolation-trials --disable-web-security --user-data-dir="D:\temp"run창에 창 (10) 감사합니다 많이.
Sampath

헤어 풀링 ARGHGHGH-더 이상 작동하지 않는 것
Daniel Sokolowski

1
--disable-site-isolation-trials를 추가하면 실제로 Chrome v 75.0, Selenium Web Driver, Java에 도움이되었습니다. 감사!
Nikolay Chernov

cors를 사용하여 사이트를 테스트해야하는 경우, 브라우저의 다른 인스턴스를 시작하거나 인스턴스를 종료하는 대신 옵션을 켜고 끄는 Safari 만 사용하십시오. [ stackoverflow.com/a/12158217/922457 ]
Edenshaw

1
창문에서 나를 위해 일했습니다! 감사합니다!
Jánosi-Borsos Róbert

20

"Allow-Control-Allow-Origin : *"이라는이 크롬 플러그인을 사용할 수 있습니다. ... 죽은 단순하고 매우 잘 작동합니다. 여기에서 확인하십시오 : *

크롬 확장


4
"evil.com"웹 사이트를 원산지로 설정하고 의심스러운 것 같습니다.
Suprido

5
이 의견의 날짜에 따라 더 이상 작동하지 않습니다. 플래그 경로를 사용하는 것이 좋습니다.
NJDawson

19

Selenium Webdriver의 경우이 경우 적절한 인수 (또는 "스위치")를 사용하여 셀레늄이 Chrome을 시작하도록 할 수 있습니다.

 @driver = Selenium::WebDriver.for(:Chrome, { 
       :detach => false,
       :switches => ["--disable-web-security"]
    })

1
disable-web-security에 대한 두 개의 선행 대시입니다. 내 브라우저를 사용하면 한 번의 대시처럼 보입니다.
mikelupo


14

Linux에서 Chrome을 사용하는 경우 다음 명령이 작동합니다.

google-chrome  --disable-web-security


13

이러지 마! 공격을 위해 계정을 개설하고 있습니다 . 이 작업을 수행하면 타사 사이트에서 다른 웹 사이트 (로그인 한 사이트)에 요청을 시작할 수 있습니다.

대신 로컬 서버를 실행하십시오. 쉘 / 터미널 / 명령 줄을 열고 입력하는 것만 큼 쉽습니다.

cd path/to/files
python -m SimpleHTTPServer

그런 다음 브라우저를

http://localhost:8000

너무 느리다면 이 솔루션을 고려하십시오.

최신 정보

이 답변을 내리는 사람들은 여기로 가서 일관성을 유지하기 위해 이것을 내려야합니다 . 왜 내 답변이 그렇게 다운 투표 되었는지 모르겠으며 여기에 동일한 답변 이 가장 많이 투표 된 답변입니다.

당신 공격을 시작합니다. npm을 통해 원격 또는 로컬로 사이트에 포함 된 모든 타사 스크립트는 이제 데이터를 업로드하거나 자격 증명을 도용 할 수 있습니다. 할 필요가없는 일을하고 있습니다. 제안 된 솔루션은 어렵지 않으며 30 초가 걸리며 공격을받지 않습니다. 더 좋은 일이 그렇게 단순 할 때 왜 자신을 취약하게 하시겠습니까?

사람들에게 보안을 해제하라고 말하는 것은 친구들에게 현관 문의 잠금을 해제하거나 도어 매트 아래에 열쇠를 두도록하는 것과 같습니다. 확율이 낮을 수는 있지만 강제 침입의 증거없이 도둑 맞으면 보험 수금에 어려움을 겪을 수 있습니다. 마찬가지로 보안비활성화하면 보안비활성화하는 것 입니다. 단순히 보안을 해제하지 않고 문제를 해결할 수있는 경우에는이 작업을 수행 할 수 없습니다. 보안을 해제 한 일부 회사에서 해고 당하지 않으면 놀랐습니다.


9
이렇게하면 "컴퓨터"가 공격에 노출되지 않습니다. 악의적 인 JavaScript 코드는 클라이언트 시스템 자체에서 많은 작업을 수행 할 수 없습니다. 그러나 악의적 인 JavaScript 코드가 다른 웹 사이트 (facebook / administrations / banks / ...)에서 계정을 조작 할 가능성이 있습니다. 이것은 확실히 덜 위험하지는 않지만 완전히 다릅니다.
dim



2
여전히 사용자는이 작업을 수행해야 할 수도 있습니다. 문제가 서버를 실행하지 않습니다. 이 변경이 필요하지 않은 수락 / 제작 서버에 CORS를 배치하기 전에 CORS를 테스트하는 것이 문제입니다. hosts 파일을 수정해도 작동하지 않습니다.
Jeff Huijsmans

CORS는 서버 측 기술이므로 서버없이 CORS를 테스트 할 수 없습니다. CORS를 테스트하려면 CORS 헤더를 보내도록 서버를 설정해야합니다. 테스트해야 할 두 가지가 있습니다 (1) 서버가 헤더를 보내면 (2) 서버가 헤더를 보내면 브라우저에서 리소스를 사용할 수 있습니다. (1)과 (2) 모두 서버가 필요합니다. 2 만 수행하려는 경우이 서버를 사용할 수 있지만 프로덕션 사이트에 서버가 될 서버로 테스트 (2)해야합니다.
gman

11

이 크롬 확장 프로그램을 간단히 사용할 수 있습니다 Allow-Control-Allow-Origin을 사용하면됩니다.

확장 프로그램의 아이콘을 클릭하기 만하면 원하는대로 리소스 간 공유를 켜거나 끌 수 있습니다.


연결이 끊어졌습니다.
Vitaly Zdanevich

그렇지 않습니다. 그리고 그래요. 그러나 지금 우리는 명령이 의미하는 바를 여기에 있기 때문에 위의 솔루션을 사용하십시오!
Jánosi-Borsos Róbert

당신의 "우리"에 포함 된 @ Jánosi-BorsosRóbert, 그리고 명령의 의미에 대한 지식이 당신을 어떻게 여기로 데려 올 수 있습니까? 참고 : 귀하의 명령이 정확하지 않으며, 나는 순종하지 않았습니다.)
Superole

10

MAC 사용자 만

open -n -a /Applications/Google\ Chrome.app --args --user-data-dir="/tmp/someFolderName" --disable-web-security

이 변경 사항을 되 돌리는 방법 @saurab
Mohasin Ali

@MohasinAli 모든 크롬 창을 닫고 정상적으로 실행하십시오. 이 인수로 실행 한 인스턴스에만 영향을줍니다. 인수없이 다시 실행하면이 변경 사항이 적용되지 않습니다.
Jeff Huijsmans


7

Windows 10에서는 다음이 작동합니다.

<<path>>\chrome.exe --allow-file-access-from-files --allow-file-access --allow-cross-origin-auth-prompt

귀하의 답변이 다운 보트 인 것이 놀랍습니다. 최신 Chrome 버전의 로컬 파일에서 매우 효과적이었습니다.
Waruyama

@ CHANist : 아마도 OP가 "Windows 10에서 " 라고 말한 이유는 무엇입니까?
Lawrence Dol

7

Ola Karlsson의 답변에 따라 실제로 가장 좋은 방법은 다른 세션에서 안전하지 않은 Chrome을 여는 것입니다. 이렇게하면 현재 열려있는 모든 탭을 닫을 필요가 없으며 원본 Chrome 세션으로 웹을 계속 안전하게 서핑 할 수 있습니다.

이 배치 파일은 Windows에서 작동합니다.

쉽게 사용할 수 있도록 Chrome_CORS.bat 파일 에 넣습니다.

start "" "c:\Program Files (x86)\Google\Chrome\Application\chrome.exe" --user-data-dir="c:/_chrome_dev" --disable-web-security

이것은 Chrome Canary 용 입니다. Canary_CORS.bat

start "" "c:\Users\%USERNAME%\AppData\Local\Google\Chrome SxS\Application\chrome.exe" --user-data-dir="c:/_canary_dev" --disable-web-security

이것은 배치 파일을 무의미하게 사용하는 것입니다. 바로 가기가 훨씬 좋습니다. 첫 번째 따옴표 쌍 뒤의 모든 것을 바로 가기 대상에 넣으십시오.
lassombra

실제로 중요하지 않습니다. 그러나 배치에서 예를 들어 브라우저를 닫은 후 user-data-dir 삭제와 같은 더 많은 작업을 수행 할 수 있습니다.
guya

사실, 단지 실행 이외의 동작을 추가하는 것이 유용하지만,이 기능이 필요한 대부분의 사람들에게 지속적인 사용자 디렉토리를 갖는 것이 도움이됩니다 (예 : 확장 프로그램 설치)
lassombra

7

Linux- Ubuntu에서 일반 세션과 안전하지 않은 세션을 동시에 실행하려면 다음 명령을 실행하십시오.

google-chrome  --user-data-dir=/tmp --disable-web-security

6

Mac 사용자의 경우 :

open -a "Google Chrome" --args --disable-web-security --user-data-dir

Chrome 48 이전에는 다음을 사용할 수 있습니다.

open -a "Google Chrome" --args --disable-web-security

감사. 새로운 CORB 보안 정책이 포함 된 최신 Chrome 73에서 작동합니다.
StuyvesantBlue


6

OSX의 경우 터미널에서 다음 명령을 실행하십시오.

open -na Google\ Chrome --args --disable-web-security --user-data-dir=$HOME/profile-folder-name

그러면 상단에 경고와 함께 새 Chrome 인스턴스가 시작됩니다.


5

이것은 항상 움직이는 목표입니다 .... 오늘 나는 그것을 작동 시키려면 다른 깃발을 추가해야했습니다. --disable-site-isolation-trials

OS X : open /Applications/Google\ Chrome.app --args --user-data-dir="/var/tmp/Chrome_dev_2" --disable-web-security --disable-site-isolation-trials


3

Windows의 경우 :

( Windows 8.1, Chrome 44.0 사용 )

먼저 Google 크롬을 닫습니다.

그런 다음 명령 프롬프트를 열고 'chrome.exe'가있는 폴더로 이동하십시오.

( for me: 'chrome.exe' is here "C:\Program Files (x86)\Google\Chrome\Application".

그래서 나는 입력 : cd C:\Program Files (x86)\Google\Chrome\Application )

이제 다음을 입력하십시오. chrome.exe --disable-web-security

새로운 크롬 창이 열립니다.


3

크롬을 시작하기 위해 우분투에서 아래 명령을 사용했습니다 (동일한 원산지 정책을 비활성화하고 분리 모드에서 크롬을 엽니 다).

nohup google-chrome --disable-web-security --user-data-dir='/tmp' &

3

Windows에서 :

1) 새로운 바로 가기를 만듭니다 :

새로운 바로 가기 만들기

2) 다음 경로를 붙여 넣습니다.

"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe" "C:\Program Files\Google\Chrome\Application\chrome.exe" --disable-web-security --user-data-dir="c:\temp\chrome"

패스 붙여 넣기

3) 다음 페이지에서

Unsafe Chrome.exe

여기에 이미지 설명을 입력하십시오

이제 CORS 응용 프로그램을 디버깅하는 데 사용할 수있는 안전하지 않은 크롬이 데스크탑에 있습니다. 이 그래픽 답변이 일부 사람들에게 도움이 되길 바랍니다!


1

이 페이지로 이동하여 웹 사이트 도메인에 대한 도메인 보안 정책을 비활성화하십시오.

chrome://net-internals/#hsts

1
설명 해주십시오. 이 페이지 하단에 표시 Input a domain name to delete its dynamic domain security policies (HSTS and Expect-CT). (You cannot delete preloaded entries.):됩니다.
Vitaly Zdanevich

누구든지 이것을 해결 했습니까?
Yipeekiyay

@RahulMalu 어떻게 든 작동하게 했습니까?
Ben Racicot
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.