Firefox의 컨텐츠 보안 정책에 문제가 있습니다. 이것은 내 기본 코드입니다 :Firefox 20.0의 CSP : default-src 없음
<?php include_once 'corepolicies/csp.php'; ?>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script src="scripts/script.js"></script>
<link href="style/style.css" rel="stylesheet" type="text/css"/>
</head>
<body>
<form id="formTest" method="post" action="index.php">
<input type="text" name="getText"/>
<input type="submit" value="insert"/>
</form>
<div id="inDataForm">
<?php
if(isset($_POST['getText'])){
echo $_POST['getText'];
}
?>
</div>
<script src="listeners/listener.js"></script>
</body>
</html>
이것은 약간의 데이터를 제출하는 PHP의 간단한 코드입니다. 이것은 내 CSP 헤더를 설정 내 PHP 파일입니다
<?php
$rule = "default-src 'none'; ";
$rule .= "script-src ".
"http://localhost/CSP/scripts/script.js ".
"http://localhost/CSP/listeners/listener.js ".
"http://code.jquery.com/jquery-1.9.1.js; ";
$rule .= "style-src http://localhost/CSP/style/style.css;";
foreach (array("X-WebKit-CSP", "X-Content-Security-Policy", "Content-Security-Policy") as $csp){
header($csp . ": " . $rule);
}
?>
내가 모든 IE에서 같이 잘 작동하지만 나는 파이어 폭스를 실행하면 적용되지 않는 크롬에서 내 웹 페이지를로드하려고 제대로 CSP. 그것은 내 스크립트와 내 스타일이 CSP 스크립트 src = 'none'과 style-src = 'none'을 위반한다고 말합니다. 따라서 script-src 및 style-src에 대한 규칙은 보이지 않으며 이유를 알지 못합니다.
아무도 도와 줄 수 있습니까? Firefox 20.0을 사용 중입니다.
:-) 도움이 될 생각 나는 PHP 사람이 아니지만 귀하의 헤더가 다음과 같을 것으로 추측하고 있습니다. default-src 'none'; script-src http : ...; style-src http : ...; 대신 "allow 'none'"을 사용하고 X-Content-Security-Policy 헤더 만 설정하면 어떻게됩니까? Firefox는 그 기간에 전환이 진행 중이며 X-Content-Security-Policy 헤더 만 지원했습니다. 디버그 메시지가 오도 된 경우가있었습니다. – oreoshake
안녕하세요, 답장을 보내 주셔서 감사합니다. 나는 'none'허용을 시도했지만 여전히 문제가 있습니다. – user2581348
또한 CSP는 개별 파일, 최신 브라우저의 호스트 및 경로로는 해결되지 않습니다. 그래서 내 추측은 script/style-src의 값이 유효하지 않음을 나타내는 메시지가 있었고, 다시 none으로 되돌려 둡니다. – oreoshake