본문 바로가기

전체보기1040

[서버운영] ssh 를 이용한 rsync 및 스크립트 유닉스 계열에는 백업 또는 동기화로써 많이 사용되는 rsync 란 툴이 있다. 나 역시 rsync 를 백업 툴로써 사용한다. 그런차에 ssh 를 이용해 볼까 생각이 들었다. 우선 rsync를 간략히 설명하자면 서비스서버의 TCP/873 포트를 통해 특정 디렉토리의 데이터를 백업 서버의 로컬로 가져오며 2번째 실행부터는 업데이트된 내용만 가져올수 있다 그러니 백업에 대한 트래픽을 상당히 절약할 뿐 아니라 백업에 대한 서버의 부하도 줄일수 있다 다만 서비스 서버에 중요파일을 지워지거나 수정되었고 백업서버에서 rsync 를 통해 백업을 했다면 백업서버를 통해 복구할수 없는 경우가 대부분이다. 이는 rsync 가 백업툴이 아니라 동기화 툴이기 때문이다. 이런 개념을 잘 생각하고 백업툴로써 사용할것인지 아닐것인지.. 2008. 10. 16.
[정보] HTTP/1.1 METHOD 의 종류와 아파치에서의 제어 RFC 2068 문서를 보던중 호기심에 HTTP/1.1 METHOD중 DELETE method 를 이용해보려고 telnet 으로 접속시도해 보았다. ]$ telnet localhost 80 DELETE /test.gif HTTP/1.1 Host: www.domain.com Content-Length: 0 그러나 해당 화일은 삭제 되지 않았다. 물론 test.jpg 의 권한은 apache 가 읽고쓸수 있는 권한이었다. 그래서 http method 를 찾아보던중... 생각보다 많은 method들이 있었다. 아래의 URL은 http method 종류를 확인할수 있으며 실시간으로 특정 도메인에 method별로 스켄을 한다. http://www.askapache.com/online-tools/request-met.. 2008. 10. 16.
[펌]PHP socket을 이용한 파일 전송 송신 function socketTrans($host,$sendPort,$receivePath,$file_name,$tfile){ $port = $sendPort; // 원격 서버 포트 $path = $receivePath; // 화일을 받아서 처리해주는 화일명 /reomote_url srand((double)microtime()*1000000); $boundary = "---------------------------".substr(md5(rand(0,32000)),0,10); // Build the header $header = "POST $path HTTP/1.0\r\n"; $header .= "Host: $host\r\n"; $header .= "Content-type: multipart/form.. 2008. 10. 16.
파일 전송 인터페이스 만들기 출처 : http://pgmer.com/pooh/30 파일 전송 인터페이스 만들기 FTP는 아주 오래된 프로토콜이지만 아직도 많은 프로젝트에서 사용되는 범용적인 프로토콜이다. 애플리케이션이 현재처럼 개발되지 않았을 시에는 콘솔에서 일일이 로그인하는 과정과 검색 및 업/다운을 진행했지만 요즘에는 그런 명령어조차 기억할 필요없을 정도로 편한 인터페이스가 많이 개발되었다. FTP는 프로젝트에서 데이터의 이중 백업이나 파일의 이동을 필요로 하는 기능을 구현하는데 유용하다. 가장 기본적인 FTP 프로토콜 아키텍처는 로그인→디렉토리찾기→파일찾기→업로드(다운로드)→로그아웃 과정이다. PHP에서는 간단하게 몇 줄만으로 이 과정을 프로그래밍할 수 있다. 다음의 코드를 보자. 이처럼 간단히 5줄의 코딩으로 파일을 가져오는.. 2008. 10. 16.
Yum-HOWTO 출처 : http://wiki.kldp.org/wiki.php/Yum-HOWTO Yum (Yellowdog Updater, Modified) HOWTO Robert G. Brown, rgb at phy.duke.edu Jonathan Pickard,fatboy at techno.co.za 0.3, 2003-09-24 이것은 Yum: Yellowdog Updater, Modified에 대한 HOWTO입니다. Yum은 rpm기반의 시스템을 위한 자동 업데이터이자 패키지 설치/삭제도구입니다. Yum은 자동적으로 의존성을 처리해주며 rpm 패키지들을 안전하게 설치, 삭제 및 업데이트하기 위해 반드시 해야할 일들을 스스로 해결합니다. 또한 Yum은 이미 설치되었거나 혹은 저장소에 설치가능한 패키지에 관한 정보를 .. 2008. 10. 15.
VBScript 5.6 에서의 정규 표현식 (Regular Expression) 의 개요 이 글의 목적은 VBScript 5.0 버전에서부터 지원되고 있는 정규 표현식 (Regular Expression) 을 소개하는데 있으며 글 내용과 제시되는 모든 샘플 코드는 VBScript 의 가장 최신 버전인 VBScript 5.6 을 기준으로 하고 있다. 그러나 정규 표현식 그 자체에 관하여 깊이 있는 내용을 다루고 있거나 정규 표현식의 전체적인 특성에 관하여 조목조목 설명하고 있는 글은 아니며, 단지 VBScript 에서 지원하는 정규 표현식의 일부 특성에 관해서만 언급하고 있다. 정규 표현식은 그 자체로 매우 방대한 양의 주제와 응용을 가지고 있으며, 그에 관해 필자가 지닌 정도의 지식 수준으로는 이렇다 저렇다 할 게재가 아니다. 다만 필자의 의도는 VBScript 에서 제공하고는 있으나 일반적.. 2008. 10. 9.
scriptX - 프린트제어 출력이 잘 되십니까? =============================================================================== 다음은 MeadCo 사에서 제공하는 ScriptX 에 대한 보다 더 자세한 설명입니다. =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=- ASP나 자바스크립트로는 이러한 웹브라우저의 인쇄기능 설정을 변경할 수 없습니다. 사용할수 있는것이라고는 오직 여러분들이 잘 아시는 window.print(); 밖에 없습니다. ASP나 자바스크립 트 같은 스크립트 언어로는 윈도우 API를 사용할수 없기 때문이죠. 따라서 할수 있.. 2008. 10. 9.
ASP 권장하는 파라미터쿼리 ASP에서 쿼리를 짜실때 "SELECT menu_defaultYN FROM APT_MENU_INFO WHERE menu_idx = " & i 이렇게 짜는것은 성능에 좋지 않습니다... 그냥 소규모 사이트라면 상관없지만 규모가 좀 되는 사이트라면 저렇게 사용하는것 보다는 파라미터 쿼리를 사용하시길 권장해 드립니다. 아래 소스로 설명을 좀 드리면 위의 안좋은 쿼리에서 i 값에 따라 쿼리가 "SELECT menu_defaultYN FROM APT_MENU_INFO WHERE menu_idx = 1" "SELECT menu_defaultYN FROM APT_MENU_INFO WHERE menu_idx = 2" 이런식으로 넘어가겠죠? SQL서버에는 옵티마이저(SQL문장을 실행하는데 가정 적절한 데이터 추출 계획을.. 2008. 10. 9.
[기술문서] prototype.js 레퍼런스(?) 도움말형식(chm), PDF자료 Prototype.chm prototype-151-api.pdf 스쿨에서는 아직 제가 못 본거 같아 자료를 올립니다. prototype.js 를 이용하여 개발하시는 학우들에게 도움이 되었으면 합니다. 영문이며 1.5.1 버전입니다. - 추가 2008. 3. 11 - 실행시 페이지가 나오지 않으면 오른쪽 마우스버튼->속성->보안해제 를 해주시면 되겠습니다. ㅡㅡ; 출처 : PHPSCHOOL 2008. 10. 7.
부족전쟁 공략 DC 인사이드 게임 겔 2008. 9. 6.
프리스톤테일2 무기장인길드 제작 아이템 정리 [rpg게임추천] 온라인게임 프리스톤테일2 무기장인길드 제작 아이템 정리 무기 장인 길드 이름 종류 습득 레벨 필요 기여도 필요 명성 필요 금액 재사용 시간 필요재료 펄쳔 한손검 Lv 10 10 150 300 5초 강철10, 아티스톤4, 동물기름10, 돌가루30 글라디우스 한손검 Lv 20 33 500 1,000 60초 페오 소드 코어8, 아티스톤14, 페오15, 드워븐 메탈15, 강철40 브로드 소드 한손검 Lv 22 40 550 1,000 60초 페오 소드 코어12, 아티스톤18, 페오15, 오닉스 젬스톤15, 비로드25 템플러 소드 한손검 Lv 30 100 800 5,000 1,800초 페오 소드 코어22, 아티스톤32, 페오35, 젠 스톤25, 조합 섬유5 나이트 소드 한손검 Lv 32 107 9.. 2008. 8. 22.
ByVal, ByRef (함수에 인수전달하기) 함수에 인수를 전달할때 사용되는 ByVal, ByRef ByVal : 함수안에서 변수가 어떻게 변하되던 전달된 변수의 값은 변하지 않는다. ByRef : 함수안에서 변수가 변하면 ByRef로 전달된 변수의 값이 바뀌게된다. 기본적으로 ByRef다. 2008. 8. 22.
PHP 코드를 최적화하는 40가지 팁 1. If a method can be static, declare it static. Speed improvement is by a factor of 4. 메쏘드가 static이 될 수 있다면 static으로 선언하라. 4배 빨라진다. 2. echo is faster than print. echo가 print보다 빠르다. 3. Use echo’s multiple parameters instead of string concatenation. 문자열을 이어붙이지 말고, echo를 이용하여 여러 개의 파라미터를 적어라. 4. Set the maxvalue for your for-loops before and not in the loop. for 루프을 위핸 최대값(탈출조건)을 루프 안에서가 아니고 루프 시작.. 2008. 8. 21.
U.P.M.S 사파이어 v4 U.P.M.S 사파이어 V4 다운로드 주소 http://www.upms-project.com/modules.php?name=Downloads&op=getit&lid=150 Your Passcode에 적힌 숫자를 그대로 Type Passcode에 넣고, Go Get It 버튼을 누르면 됩니다. http://www.upms-project.com/PSP/downloads/UPMSInstallerV4.rar http://www.psp-hacks.com/download.php?id=4 FW 1.50 http://www.psp-hacks.com/download.php?id=1130 FW 3.40 http://www.psp-hacks.com/download.php?id=1259 FW 3.71 http://www.ps.. 2008. 8. 21.
Zend_Layout 12월 11일 core로 이동. svn에는 존재하나 1.0.3버전에는 포함안됨. 예제) http://akrabat.com/2007/12/11/simple-zend_layout-example/ 부트스트랩파일 index.php에서 layout객체 생성. 옵션으로 관련설정을 주거나 추후 변경가능. Zend_Layout::startMvc(); 무옵션일 경우 /application/views/scripts 디렉토리의 layout.phtml 파일을 사용함. layout.phtml 파일에서 해당 콘트롤러의 해당 액션.phtml 을 렌더링한 결과를 기본적으로 content 로 가져옴. 콘트롤러에서 렌더링 한 결과를 response객체의 named segment 로 지정해 놓으면 레이아웃객체에서 사용가능. $this->.. 2008. 8. 13.
response named segment $this->_helper->viewRenderer->setResponseSegment('common'); 현재 액션의 렌더링 결과가 common 이라는 이름의 세그먼트로 저장됨. layout script에서 아래와 같이 사용. --> 됨. --> 안됨. --> 됨. view script에서는 모두 안됨. -> default 세그먼트라서?!! 2008. 8. 13.
Zend_Acl_Assert class Local_Acl extends Zend_Acl { public function __construct() { $this->addRole(new Zend_Acl_Role('guest')); // 기본 롤 $this->addRole(new Zend_Acl_Role('member'), 'guest'); $this->addRole(new Zend_Acl_Role('admin'), 'member'); $this->add(new Zend_Acl_Resource('admin')); $this->add(new Zend_Acl_Resource('member'), 'admin'); $this->add(new Zend_Acl_Resource('default'), 'member'); // 기본 리소스 $this->.. 2008. 8. 13.
ErrorHandler, ViewRenderer 사용않기 ErrorHandler와 ViewRenderer는 기본으로 등록되어 있으므로 사용하지 않으려면 아래와 같이.. 프론트 콘트롤러에서 $front->setParam('noErrorHandler', true); $front->setParam('noViewRenderer', true); 콘트롤러 액션에서 $this->_helper->viewRenderer->setNoRender(); 2008. 8. 13.
Zend_Translate - array 사용 $lang_en = array( 'active' => 'active', 'deactive' => 'deactive', 'Value is empty, but a non-empty value is required' => 'Value is empty, but a non-empty value is required' ); $lang_ko = array( 'active' => '활성', 'deactive' => '비활성', 'Value is empty, but a non-empty value is required' => '값이 비었습니다. 값을 입력해주세요.' ); $trsl = new Zend_Translate('array', $lang_en, 'en'); $trsl->addTranslation($lang_ko,.. 2008. 8. 13.
Zend_View Helper - form element 태그 생성하기 view에서 자주, 반복적으로 사용되는 function 을 클래스로 모아놓는 것 같음. ^^; 기본적으로 제공되는 initial helper form 관련 태그를 자동으로 생성해준다. 의 형식으로 사용한다. name은 태그이름, value는 태그값, attribs는 태그 기타설정값(size=12, maxlength=20 등의 정보를 array형태로 전달) 은 아래의 태그로 변환. 은 아래. O X isActive는 태그이름 X는 초기선택값 null 모름 array() 선택가능 항목 'a' => 'b' --> b formHidden, formRadio, formSubmit 등 여러메소드가 있으며 기본적으로 name, value, attribs 등의 비슷한 인자를 갖음. 기타 자세한 것은 소스를 참고하면 쉽.. 2008. 8. 13.
자신이 만든 또는 3rd party 라이브러리 autoloading 하기 http://framework.zend.com/manual/en/zend.controller.subclassing.html#zend.controller.subclassing.conventions 위의 형식에 따라 자신이 만든 라이브러리나 3rd 파티 라이브러리를 설치했을 경우 해당 클래스를 사용하기 전에 require_once 나 Zend::loadClass() 등으로 미리 로딩해줘야 한다. 처럼 매 클래스파일마다 작성하기가 번거롭다고 느낄 경우.. include 'Zend.php'; /** * Register Zend::loadClass() as autoload method. Loads PEAR-style * (My_Name_Is_Foo is located in My/Name/Is/Foo.php) cl.. 2008. 8. 13.
Simple Zend_Layout Example Zend_Layout is in the trunk now, so here's a super simple MVC example that shows it in action: This example consists of three view files: the outer layout file, the index action view script and a right hand side bar. The remainder of this post describes the key files. If you just want to poke around with the code, then it's at the bottom, so page down now! Setting up This is the directory layout.. 2008. 8. 13.
일반 php에서 Zend Framework Library 사용하기 위한 설정 Daniel Vecchiato님(?)의 Using Zend Framework components in Code Igniter에서 잘 설명이 되어있는데요. CodeIgniter가 아니더라도 일반 php 프로그래밍에서도 적용이 가능합니다. 참고할 부분은 include_path에 Zend Framework가 설치된 경로를 추가하는 부분인데요. ini_set('include_path', ini_get('include_path').':'.Zend Framework Path); 입니다. 기본적인 php 설명은 생략합니다. ^^; 다만 저는 개인적으로 만들어놓은 Framework를 사용하고 부족한 부분을 외부 Library는 따로 모아서 관리하고 최대한 가벼운 Library를 사용하기 위해 global functio.. 2008. 8. 13.
Zend Framework 설치하기 APM등이 설치되어 있어야 합니다아래의 폴더명은 제가 정의한 것이며 zend framework 메뉴얼에 보시면 비슷한 패턴으로 폴더를 지정하라는 내용이 있습니다.~/_app      /controllers      /models      /views~/_lib~/document_root  이방식은 Zend에서 권장하는 방식이며 외부에서 라이브러리폴더나 로직파일들에 대한 직접적인 접근을 배제할수 있습니다. http://framework.zend.com/download/stable 에서 소스를 다운 받습니다.압축을 풀어보시면 library폴더가 있고 그안에는 Zend.php , Zend폴더가 있습니다. 이것을 ~/_lib에 복사를 하십시오.document_root 폴더에 .htaccess 파일을 만들고Rew.. 2008. 8. 13.