발생일: 2014.01.13 키워드: 웹 오디오, web audio 문제: 노트 정리하다가 2013년 2월 초에 정리해뒀던 노트를 발견했다.HTML5 웹 오디오 API를 사용할 때 참고했던 사이트 목록이다. 해결책: Getting started with web audio api http://www.html5rocks.com/en/tutorials/webaudio/intro/ 웹 오디오 API를 소개하는 튜토리얼 전반적인 부분을 쉽게 이해할 수 있게 설명해뒀다. Developing game audio with the web audio api http://www.html5rocks.com/en/tutorials/webaudio/games/ 웹 오디오 API로 게임 사운드를 구현하는 것에 대한 튜토리얼 게임 ..
## if 지시어 내에 다른 지시어를 넣지 마라 http://docs.ngx.cc/en/latest/topics/depth/ifisevil.html if 지시어 안에서 안전한 건, `return`, `rewrite` 지시어 뿐이다. 같은 조건의 if 구문이 여러 개 존재한다면, 마지막으로 정의한 것만 호출될 것이고, if 구문이 호출되면 if 구문 외부의 지시어는 호출되지 않을 수 있다. ## if 구문보단 `try_files`를 사용하라. http://stackoverflow.com/questions/869001/how-to-serve-all-existing-static-files-directly-with-nginx-but-proxy-to-apache ## 서비스 적용 예제http://blog.argt..
발생일: 2014.01.10 키워드: ab, 아파치 벤치마크, apr_socket_recv 문제: `ab` 도구를 쓰려는데 아래와 같은 오류가 발생했다. 오류 구문: apr_socket_recv: Operation timed out (60) 해결책: http://stackoverflow.com/questions/7938869/ab-is-erroring-out-with-apr-socket-recv-connection-refused-61 하위 버전에서 발생하는 오류다. 2.3 버전에서 발생하는 거였는데, 새 버전(2.3.16)에서는 수정됐다. 하위 버전이라면 업데이트하자.
발생일: 2013.12.13 키워드: CPU, 코어, core 문제: 서버 프로세스를 현재 장비의 코어 개수만큼 생성해서 운용하려고 한다.코어 개수 어떻게 가져오지...? 해결책: 요약하면, $ sysctl hw | grep cpu 참고:https://www.ibm.com/developerworks/community/blogs/brian/entry/linux_show_the_number_of_cpu_cores_on_your_system17?lang=en 맥에서는http://osxdaily.com/2011/07/15/get-cpu-info-via-command-line-in-mac-os-x/ 맥에서 코어 개수 가져오기http://stackoverflow.com/questions/1715580/how-to-..
발생일: 2014.01.14 키워드: ssh-add 문제: `ssh-add` 명령을 사용하던 중에 아래 오류를 만났다. Could not open a connection to your authentication agent. 어떻게 해결해야할까? 해결책: 어떤 `ssh-agent`를 사용해야 할 지 모르기 때문이다.머신에서 한 번도 설정하지 않은 경우에 발생할 수 있다.아래 명령으로 `ssh-agent`를 설정해주면 된다. $ eval $(ssh-agent) 참고:https://coderwall.com/p/rdi_wq
발생일: 2014.01.14 키워드: unix, eval 문제: 지금은 잘 생각나지 않는데, 어떤 쉘 스크립트 코드를 보다보니 `eval`이란 커맨드를 쓰더라.쉘에서 `eval` 커맨드가 뭘 의미하는 걸까? 해결책: 커맨드에 쉘에서 처리해야 할 값(예: 변수)가 문자열로 포함된 경우에 유용하다.아래 코드를 보면 이해할 수 있다. $ n=1$ s='$n' # 문자열로 $n을 갖도록 한다. $ echo $n1$ echo $s$n$ eval echo $s1 참고:http://www.unix.com/shell-programming-scripting/66063-eval-shell-scripting.html
엔진엑스의 풍부한 기능은 모듈에서 나오고,애플리케이션 전체가 모듈을 기반으로 작동한다. 각 모듈의 사용 여부는 컴파일 때 결정된다. ## 재작성 모듈 (rewrite 모듈) URL 재작성을 목적으로 만든 모듈이다.재작성 모듈을 이용해서 웹사이트의 페이지 속성을 나타내는 유용한 정보가 포함된 링크 주소를 사용할 수 있다.예) http://website.com/article-1234-economy-strenghens.html 이런 해법으로 방문자 뿐 아니라 검색 엔진의 관심도 끌 수 있기 때문에,URL 재작성은 검색 엔진 최적화(SEO)를 위해서 핵심적인 요소다. 클라이언트가 요청한 URI를 웹 서버가 수신하고, 해당 파일을 서비스하기 전에 URI를 재작성하는 매커니즘이다. 그런 후 재작성된 URI를 loc..
## HTTP 코어 모듈 HTTP 서버의 핵심적인 블럭, 지시어, 변수를 포함한다.엔진엑스를 빌드할 때 기본적으로 포함된다. ## 대표 블럭 ### 구조 블럭 HTTP 모듈은 아래와 같은 세 가지 새 논리적 블럭을 제공한다.프로토콜 수준(http 블럭), 서버 수준(server 블럭), 요청 URI 수준(location) - http 이 블럭 안에서 엔진엑스의 HTTP 부문과 관련된 모든 모듈의 지시어와 블럭을 정의한다. - server 하나의 웹사이트를 선언하는 데 사용한다. (호스트별) http 블럭 안에서만 사용할 수 있다. - location 웹사이트의 특정 위치에 적용할 설정 그룹을 정의한다. server 블럭이나 다른 location 블럭 안에 삽입할 수 있다. ## 모듈 지시어 표현 방법: ..
## 기본 설정 기본 설정 파일의 경로는 `/usr/local/nginx/conf/nginx.conf` - `#`는 주석- 지시어는 항상 세미콜론(`;`)으로 끝난다.- 엔진엑스는 모듈 구조로 작동하며, 각 모듈은 특정 지시어의 묶음 형태로 제공된다. 가장 기본적인 지시어들은 코어 모듈에 포함돼 있다.- `include` 지시어는 특정 파일을 포함하는 기능 파일 글로빙을 지원한다. 예) include /sties/*.conf- `include`를 할 때 파일이 존재하지 않으면 환경 설정 테스트에 실패한다. - 설정 파일의 관습 - nginx.conf : 기본 환경 설정 - mime.types : 파일 확장명과 MIME 타입 목록 - fastcgi.conf : FastCGI 관련 설정 - proxy.con..