가제트연구소

asp, php 소스 IE 오른쪽 메뉴로 바로 열기 본문

IT

asp, php 소스 IE 오른쪽 메뉴로 바로 열기

가제트연구소장 2012. 12. 3. 15:48

오늘도 수고하시는 웹 개발자를 위한 소소한 팁을 블로그 개설 기념으로 제공합니다.

이 팁은 개발자 컴퓨터(운영중인 사이트의 소스에 바로 접근할 수 있는)에서만 사용할 수 있는 팁으로 마우스 오른쪽 버튼만으로 웹 사이트 소스(aps, jsp, php 등)에 바로 접근하는 팁입니다.

운영하는 사이트 소스를 보면 수 없이 많은 폴더와 하위 폴더 등 보통 웹 서버쪽 소스와 폴더 구성이 복잡하지요. 소스 하나 고치려면 브라우저에서 URL 보면서 웹 서버 폴더를 찾아서 소스를 불러오는데 조금 번잡하지요?

그래서 웹 서버 소스를 쉽고 빠르게 열어 수정할 수 있는 팁을 소개합니다.


먼저 아래 그림을 보고 계속 이야기를 하지요.


아래 그림은 본 블로그 내용과 관계 없습니다.(^^)

수정이 필요한 페이지를 브라우저로 확인 후 마우스 오른쪽 버튼을 눌러 오른쪽 메뉴의 "웹 소스 불러오기" 메뉴를 선택합니다.


그럼 editplus가 실행되면서 소스가 보이는 군요.. 근데 자세히 보니 웹 서버에 있는 .asp 소스를 그대로 가져왔네요. 소소하지만 웹 소스 수정 시 상당히 편리하겠지요?


필요한 것은 다음과 같습니다.

1. 사이트 운영 권한
- 사이트의 소스를 수정할 수 있는 권한은 당연해야지요?

2. 사이트 소스에 접근해서 수정할 수 있도록 설정된 개발용 컴퓨터
- 웹 소스에 접근할 수 있도록 방화벽이 오픈된 컴퓨터나 웹 소스 FTP 등이 설정된 컴퓨터

3. 인터넷 익스플로어 오른쪽 메뉴를 등록하는 레지스트리 파일
- 이건 제가 첨부로 제공해 드립니다.

4. 제일 중요한 것! 간단한 자바 스크립트 코딩 실력
- 웹 프로그래머라면 이건 뭐 그냥 패스~~, 혹시 몰라 샘플 자바 스크립트로 첨부 파일에 제공해 드려요.

원리는 IE 오른쪽 메뉴를 생성하고, 생성된 메뉴 선택 시 우리가 만든 자바 스크립트가 실행되도록 설정하고, 실행되는 자바 스크립트는 현재 브라우저의 URL을 받아 이를 소스 파일 경로로 변환하여 에디터를 실행하는 방식입니다.

[IE 메뉴 만들기]
수정해야하는 레지스트리 키는 HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt 입니다.

첨부된 레지스트리 파일 내용은 다음과 같습니다. (첨부된 레지스트리 파일 다운 후 더블 클릭하시면 되는 거 아시죠?)

[HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\MenuExt\웹 소스 불러오기(&S)]
@="D:\\Edit.html"
"Contexts"=dword:ffffffff




[에디터 실행하는 자바스크립트 만들기]

첨부된 Edit.html 파일을 d:\ 루트에 둡니다.

자 그럼 실행중인 IE를 모두 종료하고 다시 실행해서 오른쪽 버튼을 누르면 "웹 소스 불러오기(&S)"라는 메뉴가 보이며, 해당 메뉴 선택하면 다음과 같은 alert 창이 나타나면 일단 성공입니다.


이제 Edit.html 파일을 보실까요?

소스 중 붉은 박스가 핵심이며 나머지는 각자 상황에 맞게 구현하시면 되겠습니다.

첫번째 박스는 오른쪽 메뉴를 클릭했을때 페이지의 URL을 가져오는 방법이며, 두번째 박스는 자바 스크립트에서 에디터를 실행하는 방법입니다.

중간의 다른 소스는 URL을 소스가 저장된 실제 물리적인 소스 위치로 변환하는 소스로 이 부분은 각 사이트별 다 틀리니 상활에 맞게 응용 하세요.

참고로 EditPlus를 사용하시고 FTP로 웹 소스에 접근하는 경우 전체 경로는 다음과 같이 지정할 수 있습니다.

ftpuser@123.123.123.1:/WebSrc/index.asp 또는 EditPlus에서 FTP로 파일을 오픈 후 EditPlus 타이틀 바에 나타나는 전체 경로를 확인하셔도 됩니다.


** 또 하나의 팁!!!

여러명의 개발자가 동시에 작업한다면 Edit.html를 웹 서버에 올려두시면 편리합니다. 레지스트리 파일의 Edit.html 경로는 http://~~ 형태로 수정하셔야겠지요?