Retrieving resetting ColdFusion admin password - 관리자 패스워드를 분실했을때
Category : ColdFusion , Open Bluedragon , Railo Comments : 댓글쓰기 Posted by 장창학 at 12:44 AM

OpenBD를 사용중인 환경에서 OpenBD 관리자의 패스워드를 분실했을 경우엔 어떻게 찾을 수 있을까요? 우선, FTP나 SFTP 또는 SSH가 가능해야 합니다. 다음의 경로에서 bluedragon.xml 파일을 다운로드하여 수정하거나, 또는 VI등으로 열어보면 패스워드를 알 수 있습니다. 일반적으로 자신의 웹루트에서의 WEB-INF디렉토리에서 다음의 위치를 찾습니다.

OpenBlueDragon Admin : {HOST WEB ROOT}/WEB-INF/bluedragon/bluedragon.xml

위 파일의 Server - System의 노드에서 보면 Password항목이 있는데 이 부분이 관리자 패스워드 입니다. 암호화되어 있지 않기 때문에 바로 보거나 수정할 수 있습니다. 그렇다면 Railo의 경우는 어떨까요? Railo와 Adobe ColdFusion의 경우는 암호화되어 기록되기 때문에 분실한 패스워드를 알 수 없지만 다시 설정은 가능합니다. Railo의 경우 Server Admin과 Web Admin의 각각의 다른 관리자모드를 제공하므로 각각의 패스워드를 저장한 위치가 다릅니다.

Railo Server Admin : {railo installation}/railo-server/context/railo-server.xml
Railo Web Admin : {host root}/WEB-INF/railo/railo-web.xml.cfm

위 파일을 각각 열어(Web Admin만 하는 경우 Server Admin파일은 수정할 필요없음) 관리자 패스워드 부분을 삭제하고 공란으로 수정한 뒤 Railo를 재시작하면 관리자 패스워드를 재설정 할 수 있습니다. 그럼 Adobe ColdFusion의 경우는 어떨까요? ColdFusionMX버전 이후의 모든 버전에서는 먼저 ColdFusion데몬(프로세스)를 중지한 후 다음의 파일을 열어 수정한뒤 데몬(프로세스)를 재시작하면 관리자 패스워드를 재설정할 수 있습니다.

Adobe ColdFusion : {Adobe ColdFusion Installation directory}/lib/neo-security.xml

위 파일을 열고 <var name='admin.security.enabled'><boolean value='true'/></var> 부분의 False부분을 True 바꾼뒤 ColdFusion을 재시작하면 관리자 패스워드를 재설정할 수 있습니다.


Ubuntu, CentOS에 ColdFusionMX버전을 설치 후 구동실패
Category : ColdFusion , Ubuntu & Linux/Unix Comments : 댓글쓰기 Posted by 장창학 at 5:48 PM

ColdFusion MX버전은 2002년에 출시된 구버전의 ColdFusion입니다만, 가끔 예전에 만들어진 시스템의 유지보수 등의 이유로 설치가 필요한 경우가 있습니다. 대부분 당시의 운영체제, DB서버 등을 그대로 셋팅하길 권장하지만 사실 이제와서 Solaris 8이나, Redhat 9와 같은 구형 리눅스를 구하기도 힘들 뿐 더러 하드웨어 지원드라이버의 부재등으로 사실상 설치 시 부터 머리가 아파옵니다.

얼마전 ColdFusion MX 6.01 Linux버전을 설치할 일이 있었는데요. 실행OS는 Ubuntu 8.04를 택했습니다. 결과적으로 Ubuntu는 올바른 선택이 아님을 알았죠. 권한문제 및 ColdFusionMX와 Apache2와의 연동문제 등 실제 설치 및 구동에 문제가 있었습니다. 우선 설치 후 libc.so.6 의 링크를 찾을 수 없어 구동할 수 없다는 오류는 ColdFusion 실행스크립트의 다음 부분을 주석처리하여 구동할 수 있습니다.

가령 리눅스에서 기본 설치경로로 설치했다면 /opt/coldfusionmx/bin 에 구동스크립트인 coldfusion이 있습니다. 일반적으로 우분투에서는 sudo ./coldfusion start와 같이 실행합니다. 실행이 libc.so.6의 문제로 안된다면 sudo vi coldfusion 하시어 xport LD_ASSUME_KERNEL 라는 문자열을 찾아 주석처리하시고 저장한 후 다시 실행해 보시면 됩니다.

그런데 문제는 wsconfig와 같은 웹서버 연동 기능에 문제가 있는건지 우분투의 httpd.conf에 jrun모듈을 로드하는 스크립트를 정상적으로 기입하지 못하여 Apache에서 cfm파일을 호출하면 전부 바이너리파일로 다운로드 시켜버리는 문제가 있습니다.

 결론은 Radhat 9을 하나쯤 장만하여 갖고 있어야 한다는것.. ㅠㅠ  우분투 등 ColdFusionMX 당시에는 없던 리눅스 배포판은 사용에 주의할것이란점.. 그리고 최신 JDK나 JRE에서도 문제가 있다는 것 등등..가벼움을 위해 구버전 쓰신다면.. Railo를 대신 사용하실 것을 추천해 드립니다.


OpenCFML 위원회에서의 Adobe의 탈퇴? 그리고 붉어지는 CFML엔진들의 갈등
Category : ColdFusion , Open Bluedragon , Railo Comments : 댓글쓰기 Posted by 장창학 at 4:44 PM

OpenCFML(http://www.opencfml.org)위원회는 ColdFusion Markup Language의 표준을 정하는 비공식 단체입니다만, 사실 ColdFusion의 모든 특허, 저작권은 Adobe Systems에게 있기 때문에 사실상 위원회의 위원들이 Adobe사와 직간접적을 관련이 있는 사람들이여서 결론적으론 Adobe의 영향력이 가장 많이 미치는 단체이기도 합니다.

이런 단체를 만든 이유는 사실 Adobe사외에 BlueDragon과 같은 경쟁 엔진들 그리고 Railo나 Open BlueDragon과 같은 공개용 엔진들이  등장하면서 서로 다른 태그 및 함수, 그리고 기능을 하나로 규격해 보고자 함이 가장 큰 목적입니다. 여러 엔진을 대표하는 위원들이 모여서 다음번 버저에서 이 태그는 서로 공동으로 채택하자 등등의 일들을 벤더에게 조언하는것이죠. 여기에는 Ben Forta나 Ray Camden, Rob brooks Bilson과 같은 친 Adobe개발자도 있고, Sean Corfield 과 같은 Railo진영, Matt Woodward와 같은 친 OpenBD진영의 사람도 있죠.

그런데 어제 저도 놀라는 포스트를 보고 말았는데 Adobe가 이 위원회에서 손을 뗀다는 것이였습니다. Adam Lehman의 블로그(http://www.adrocknaphobia.com/post.cfm/adobe-no-longer-part-of-opencfml)에서 해당 내용이 처음 언급된거 같은데요. 사실 실제 Adobe가 위원회에서 탈퇴한다는 말이 아니라.. Adobe진영의 위원들이 이 조직에서 손을 뗀다는 말이 맞겠네요.

요약하자면 위원회의 노력에도 불구하고 표준으로 정한 ColdFusion의 스펙이 각각의 엔진별로 따로 구현되고 있고, 태그나 함수도 각각 다른 길로 가는것도 문제고, 더욱이 표준으로 정해서 복제엔진들(Adobe의 입장에서는 Railo나 OpenBD는 그저 자사의 제품을 복제한 복제품에 불과합니다.)로 고객이 이탈하는 것을 조장하는 꼴이 되는것이 아니냐.. 그래서 결론은 Adobe가 피해를 보는것이 아닌가? 뭐 이런 이야기 같습니다. 결국 이는 많은 ColdFusion 커뮤니티나 개발자에게 피해가 고스란히 간다..뭐 이런 이야기죠.

특히 Adobe ColdFusion의 스팩을 충실히 따르는 Railo와는 달리 BlueDragon진영은 거의 따로 놀고 있어 표준 CFML로 만들어도 작동이 안되거나 어떤 함수와 태그는 서로 호환도 안되어서 문제가 발생한다는 겁니다. 그런데 문제를 바라보는 시각은 각각 다른가 봅니다.

표준엔진인 Adobe엔진이 있는데 왜 복제엔진들이 나와서 설치느냐 하는 부류와 너네껀 너무 비싸고 비효율적이야 하는 부류.. 두 부류의 감정싸움이 서서히 나타나고 있는 것 같습니다. 대부분은 복제엔진의 등장에 원인이 있고 문제가 있으니 너네가 잘못이다.. 이런 시선이 강한것도 사실인거 같습니다만, 그러나 사실.. Java나 다른 언어를 보더라도 표준과 제정은 Sun이 하지만 Java를 하는 업체는 많다는 것을 보면 Adobe진영의 주장도 그리 논리적이질 못합니다. 즉, 스스로 ColdFusion의 주인으로서 보다 저렴하고 강력한 제품을 출시하고, 업계 및 개발자의 지원에 보다 적극적이였다면 복제엔진의 등장이 없었을 지도 모르겠습니다. 대부분의 복제엔진들의 등장의 이면에는 가격적인 측면, 새로운 태그와함수의 추가를 원하는 커뮤니티의 의견이 제때 반영되지 않는 느린 출시속도.. 등등 Adobe가 해결해 주지 않으니까 우리가 직접 한다는 식의 주장도 있는 걸 보면 이런 표준기관의 등장도 참으로 안타까울 뿐인데 더욱이 이번 소식은 이런 조직의 갈등?이라니..

암튼 각각의 엔진별로 따로 함수나 태그를 지원하기 시작한다면, 결국은 아이폰이나 안드로이드냐의 문제보다 더 복잡한 같은 언어인데 서로 다른 비극이 생기지 않을까 걱정입니다. 좋은 언어임에는 분명한데 제 개인적인 생각으로는 주인들을 잘못 만나 성장하지 못함이 아쉽기만 합니다. Railo나 OpenBD가 등장할때 적극적으로 가격인하, 성능개선 등등의 무기로 적극적인 대응을 하거나, 아니면 이들 엔진을 인수합병하거나 하는 방법도 있을 텐데 말입니다.

점점 OpenBD와 Railo 그리고 Adobe ColdFusion이 달라지기 시작해서 걱정입니다.  


RIA 맥잡기 세번째 세미나 - ColdFusion Session 발표자료 및 예제
Category : ColdFusion , Flash/RIA , Miscellaneous Comments : 2 Comments Posted by 장창학 at 1:12 AM

지난 7월 3일(토) 강남교보타워에서 있었던 RIA 맥잡기 세번째 세미나 - ColdFusion Session 발표자료 및 예제입니다. 열이아빠 이준하님의 도움으로 부족한 제가 ColdFusion에 대한 발표를 했는데요. 시간을 너무 소비해서 준비해간 자료의 대부분의 예제를 자세히 소개를 못했습니다. 욕심이 너무 앞섰나 봅니다. ^^; 이후 열이아빠님 세션은 그냥 시간부족이 아니셨는지...

초창기 이후 끊어지다시피한 ColdFusion에대한 명맥을 잇는것 같아 나름 보람도 있었고, 당시 드리지 못한 예제나 작동원리 등을 직접 경험해보시라고 부랴부랴 서버설치하고, 예제를 담았습니다. 한시적으로 운영되겠지만 소스를 받아서 로컬에서 테스트 바라며, 대부분이 이미 제 블로그에서 소개된 자료이니 관련된 설명은 블로그를 참조하시면 도움되리라 봅니다. 기초적 질문이던, 다양한 관심과 궁금증은 제 블로그나, 이메일, 또는 Open ColdFusion Cafe(http://cafe.naver.com/opencfml.cafe)로 문의해주시면 도움드리겠습니다.

발표자료 : PDF다운로드

발표예제 및 소스코드 다운로드


Adobe ColdFusion에서 내장 웹서버의 ROOT 디렉토리 변경
Category : ColdFusion Comments : 댓글쓰기 Posted by 장창학 at 1:21 AM

오랜만의 포스트입니다. ^^ 요새 개인적인 변화, 회사업무 등등으로 인해 포스트는 커녕 CF공부도 못하고 있습니다. ^^

오늘은 Adobe ColdFusion을 설치할 일이 있었습니다. 대부분 프로덕션환경에서는 Adobe ColdFusion외에 JDK나, 웹서버 등을 미리 설치한 후 최종적으로 ColdFusion을 설치를 하는데 개발용으로 Local에서 설치할 필요가 있었는데요. 혹시나 도움되는 Tip이 될까 몇자 적습니다.

 Adobe ColdFusion을 설치할때 반드시 자신의 PC에 웹서버가 깔려 있을 필요는 없습니다. Adobe ColdFusion은 내장 웹서버(Built-in Web Server)가 있어서 개발하는데 전혀 불편함이 없도록 도와주고 있습니다. 다만, 이 웹서버는 성능이 좋지 않거니와 Apache나 IIS처럼 사용자가 맘대로 설정할 수 있는 것이 아닙니다만, 혹시 PC사양이나, 기타 문제로 Apache등의 웹서버를 따로 설치하지 않고 가볍게 ColdFusion 내장 웹서버로 개발하시고자 하는 분들중에 저처럼 웹 루트디렉토리가 항상 ColdFusion설치 디렉토리내의 wwwroot로 고정되는 것을 변경하고자 하는 분들이 있으리라 봅니다.

기본적으로 Windows환경에서 ColdFusion을 설치하면 C:\ColdFusion9에 설치되며, 웹루트 디렉토리는 C:\ColdFusion9\wwwroot 가 됩니다. 매번 저 경로에 파일을 업로드 하는것이 귀찮거나, 또는 다른 디렉토리를 웹루트 디렉토리를 지정하려면 다음과 같이 할 수 있습니다.

기본설치 디렉토리의 다음의 경로로 찾아들어갑니다.

C:\ColdFusion9\wwwroot\WEB-INF

해당 디렉토리의 jrun-web.xml을 열어 다음의 노드를 추가해 줍니다.

<virtual-mapping>
<resource-path>/*</resource-path>
<system-path>D:/wwwroot/</system-path>
</virtual-mapping>

여기서 system-path는 본인이 지정할 웹루트 디렉토리입니다. 절대경로로 지정해 주세요.(리눅스의 경우 /home/nooree/wwwroot 등) 저장한 다음 원래 경로였던  C:\ColdFusion9\wwwroot안의 CFIDE와 crossdomain.xml을 본인이 지정하고자 하는 디렉토리로 이동시켜 주세요.(복사가 아니라 이동입니다.) 그러면 여기의 경우 D:/wwwroot/CFIDE란게 존재하겠죠?(단, 주의해야 할 점은 WEB-INF디렉토리는 그대로 두어야 합니다. 이동하거나 복사하면 안됩니다.)

자, ColdFusion Application Server를 재시작해주고 브라우저에서 http://127.0.0.1:8500 하면 이제 본인이 지정한 디렉토리의 index.cfm파일을 찾게 됩니다.

만약 8500이란 포트를 사용하지 않고 일반 웹서버의 80을 쓰고자 한다면, 기본설치디렉토리의 다음의 경로에서

C:\ColdFusion9\runtime\servers\coldfusion\SERVER-INF

jrun.xml 파일을 열어 <attribute name="port">8500</attribute> 부분을 <attribute name="port">80</attribute> 으로 변경하시고, ColdFusion Application Server를 재시작해 주세요. 이제 http://127.0.0.1/이렇게 접속이 가능해집니다.

 


About me

Categories

Monthly Archives

Links

Recent Posts

Recent Comments