2012-08-08 4 views
4

클라이언트 측 사용자로부터 CSS 및 JavaScript 파일을 숨기고 사용자에게 표시된 웹 페이지에 여전히 포함시키는 방법이 있습니까?클라이언트 측 사용자로부터 CSS 및 JavaScript 파일을 숨기는 방법은 무엇입니까?

+2

당신이 할 수있는 일은 그들을 최소화하는 것입니다. – xbonez

+4

"여기이 스테레오 블라스팅 음악을 듣지 만 음악을 듣지 마라!" - 아니, 할 수 없어. –

+0

가능한 복제본 [웹 페이지에서 자바 스크립트 코드를 숨기려면 어떻게해야합니까?] (http://stackoverflow.com/questions/6869312/how-do-i-hide-javascript-code-in-a-webpage) – epascarello

답변

12

아니요. CSS와 자바 스크립트는 브라우저에서 파싱 가능하고 읽을 수 있어야하며, 따라서 사람이 동일한 데이터에 액세스 할 수 있어야합니다.

자바 스크립트를 모호하게/압축/축소 할 수는 있지만 대체적으로 공백을 제거하고 변수 이름의 이름을 바꾸거나 줄이는 것입니다. 스크립트는 여전히 기능적이며 실제로 작동하는 방식에 재미있는 사람은 조금 더 시간을두고 (아마도 그것을 다시 포맷하는 몇 가지 도구를 사용하여) 알아낼 수 있습니다.

축소의 일반적인 이유는 스크립트의 다운로드 크기를 줄이는 것 (사이트 성능을 향상시키는 것)이지만 코드를 사람이 읽을 수 없도록 만드는 부작용이 있습니다. 코드를 재 형식화 할 수 있고 그렇게 할 의사가있는 사람이 여전히 이해할 수 있으므로 실제 보호 기능을 제공하는 소형화는 중요하지 않습니다.

비공개로 유지해야하는 경우 논리를 서버에 보관하고 클라이언트에 넣지 마십시오. 필요한 경우 클라이언트는 ajax를 통해 서버 기반 기능에 액세스 할 수 있습니다.

CSS를 보호해야하는 사업 적 이유가 있다고 생각한 사람은 들어 본 적이 없습니다. 레이아웃/프리젠 테이션 형식입니다.

+0

서버 쪽 논리를 유지하는 방법을 설명해 주시겠습니까? 그리고 그들은 모든면에서 클라이언트로부터 보호되고 있습니다. 아약스를 통해 액세스 할 수 있습니까? 마지막 라인에서 정확히 말한 것을 얻을 수 없습니다. – kushpf

+2

작동 방식을 공개하지 않으려는 비밀 알고리즘이있는 경우 해당 알고리즘을 서버 코드로만 구현하십시오 (클라이언트 코드처럼 서버 코드를 공개 할 수 없음). 알고리즘은 페이지 렌더링 시간에 사용되거나 클라이언트 페이지가 ajax 호출을 통해 알고리즘을 사용하는 작업을 요청할 수 있습니다. 더 자세한 정보를 제공하기 위해 자신을 보호하려는 노력에 대해 더 많이 알아야합니다. – jfriend00

+0

구현할 코드를 생각 중이며 여전히 비밀로 유지하고 있습니다.그러나 서버 측 언어가 CSS와 javaScript에 필적 할만한 유연성을 제공합니까? – kushpf

1

JavaScript 파일을 항상 축소하여 다른 사람이 파일을 읽거나 수정하는 것을 더 어렵게 만들 수 있습니다. 예를 들어

는 : http://www.minifyjavascript.com/

또한 CSS와 같은 일을 할 수 있습니다.

http://developer.yahoo.com/yui/compressor/

은 파일을 작게를 할 수있는 방법을 제공하는 다른 사이트가 있습니다

(은 자바 스크립트와 CSS를 모두 수행 할 수 있습니다)하지만, 클라이언트 측에서 완전히 숨길 수있는 방법은 없습니다.

관련 문제