aspx 소스 감추기
오래 전에 ASP.NET 공부할 때 정리해두었던 내용인데 지금은 많이 변해서 쓸모가 있을지 모르겠습니다.
기존의 ASP.Net 1.x 버전에서는 코드비하인드 소스 즉 aspx.cs 파일에 들어있는 내용은 dll 파일로 컴파일되어서 동작하게 됩니다.
그러므로 aspx.cs 파일의 소스는 볼 수가 없었습니다.
그런데 가끔 aspx 파일의 소스도 감추고 싶다거나 aspx 파일의 html 소스를 수정못하도록 하고 싶다는 경우가 있습니다.
ASP.Net 2.0 에서는 그런 기능이 있습니다.
precompile 기능을 이용해서 aspx 소스도 모두 dll 에 포함시켜버리는 기능입니다.
이 경우 사이트에 제일 처음 접속할 경우 최초 컴파일을 하느라 한참동안의 시간이 필요한 것도 필요가 없습니다.
이미 컴파일 되어 있기 때문에 더 이상 html 소스를 수정하는 것도 불가능합니다.
물론!!! 프로젝트를 열어서 원본 소스로 작업을 하는 것은 당연히 가능합니다.
방법은 다음과 같습니다.
Build 메뉴에서 Publish 기능을 선태합니다.
기능을 선택하고 나면 Allow this precompiled site to be updateable 항목이 보입니다.
이 항목에 체크가 되면 기존의 1.x 방식처럼 aspx 소스가 그대로 남아 있어서 수정이 가능한 상태입니다.
하지만 이 항목의 체크를 빼고 Publish 를 하게 되면 aspx 소스가 없어집니다.
직접 확인을 해보시기 바랍니다.
Allow this precompiled site to be updateable - 기존 방식입니다.
Deny this precompiled site to be updateable - 2.0 에서 추가된 새로운 방식입니다.
위에서 보시는 것처럼 aspx 파일의 소스가 전혀 없고 간단한 설명 문구가 있습니다만 전혀 관계가 없는 문장입니다.
하지만 해당 aspx 파일이 존재하지 않으면 오류가 발생합니다.
404 Not Found 일텐데, 즉 aspx 파일의 소스는 dll 에 포함되어 있으므로 aspx 파일만 존재하면 된다는 것입니다.
'프로그래밍' 카테고리의 다른 글
Auto Backup to AWS S3 (DB Backup etc.) (0) | 2017.08.12 |
---|---|
OWASP - 가장 심각한 10가지 웹 애플리케이션 보안 취약점 (0) | 2017.07.18 |
해쉬 알고리즘 MD5 (0) | 2017.07.18 |
AWS S3로 파일 자동 백업하기 (DB 백업 등) (0) | 2017.07.17 |
윤년 계산 : PHP, ASP (0) | 2017.07.15 |