Do Not Think!!!

Posted
Filed under 01010101

RESTful API 구현

어떤 언어를 사용할까?

선택지는 Java+Spring, PHP+CodeIgniger, JavaScript+node.js
ruby, python 은 언어 경험이 없기 때문에 선택지에서 제외
가장 최근까지 PHP+CodeIgniter 로 Web + RESTful API 개발
PHP+CodeIgniter+MariaDB 로 Web 개발 결정
node.js 가 얼마나 좋은가? 라는 호기심에 JavaScript+node.js 선택

Express 와 restify 중에서 어떤 모듈을 이용할까?

웹사이트는 PHP+CodeIgniger 로 개발하기 때문에, 단지, API 기능만 개발하면 되는 상황.
restify 가 좀 더 목적에 맞는 모듈이라 생각되었기 때문에 restify 선택

MariaDB 이용

현재 사용중인 db 를 그대로 가져가야 함. 선택의 여지가 없음

MVC 구조

https://github.com/duddns/node-restify-mvc-mariasql

Posted
Filed under 01010101

php, gd 버전이 업데이트 되면서 JP_ThumbnailListViewTT 플러그인에서 jpg 이미지 썸네일을 만들지 못하는 문제 발생


원인

php gd_info 결과 데이터 형식 변경
5.3.0 JPG Support attribute renamed to JPEG Support.


해결

thumb_engine.php 파일 내용 중에서,
[CODE]$gd_info['JPG Support'][/CODE] 부분을
[CODE]$gd_info['JPEG Support'][/CODE] 로 변경

Posted
Filed under 01010101
[CODE]$ vi log-2014-04-23.log
$ tail !$[/CODE]
Posted
Filed under 글로 기록하기
그동안 개인 블로그, 심지어는 회사 사이트까지 DNSEver 의 DNS 서비스를 이용해 왔습니다.
무료로 제공해오던 서비스를 4월 10일 부터 유료로 전환한다고 발표를 했는데,
실제 서비스 이용요금은 도메인당 1,000원/월 으로 매우 저렴합니다.

도메인 등록 업체의 기본 DNS 서비스를 이용해도 되지만,
서브도메인, 구글앱스 등을 연결해야 하는 입장에서,
도메인 등록 업체의 DNS 서비스는 부족한 면이 있습니다.

스탠다드 DNS 서비스: 도메인당 1,000원/월
엔터프라이즈 DNS 서비스: 도메인당 30,000원/월

관리하는 도메인이 많기 때문에 약간 부담은 되지만,
직접 DNS 서버를 구축하기는 비용에 비하면 매우 저렴하기 때문에,
유료로 계속 이용할 예정입니다.


DNS Powered by DNSEver.com
Posted
Filed under 01010101
http://dont.pe.kr/tt/450


개선된 코드

config.php 파일 수정
[CODE]$config['proxy_ips'] = $_SERVER["REMOTE_ADDR"];[/CODE]
Posted
Filed under 01010101
0. Prepare
MacPorts
http://www.macports.org/

Apple's Xcode Developer Tools
https://developer.apple.com/technologies/tools/

Apple's Command Line Developer Tools
https://developer.apple.com/downloads/


1. Install Apache2 & PHP
[CODE]$ sudo port install apache2
$ sudo port install php5
$ sudo port install php5-mysql
$ sudo port install php5-xdebug
$ sudo port install php5-openssl[/CODE]


2. Configure Apache2
[CODE]$ sudo vi /opt/local/apache2/conf/http.conf

LoadModule php5_module modules/libphp5.so
Include conf/extra/mod_php.conf[/CODE]


3. Install MySQL
[CODE]$ sudo port install mysql56-server [/CODE]


4. Configure MySQL
[CODE]$ sudo vi /opt/local/etc/mysql56/macports-default.cnf

#skip-networking[/CODE]


5. Configure XDebug
[CODE]$ sudo vi /opt/local/etc/php5/php.ini

; NOTE: This line adds the xdebug extension. The macports install will give you the path,
; or may even add this automatically. Be smart, look for a similar line in your config first.
; (Edit: 06/22/2012)
zend_extension="/opt/local/lib/php/extensions/no-debug-non-zts-20090626/xdebug.so"

; General config
;Dumps local variables on exception
xdebug.show_local_vars=On
;Dump server variables
xdebug.dump.SERVER=*
;Dump global variables
xdebug.dump_globals=On
xdebug.collect_params=4;

; Tracing
xdebug.auto_trace=On
xdebug.trace_output_dir=/opt/local/php_traces/
xdebug.show_mem_delta=On
xdebug.collect_return=On

; Profiler
xdebug.profiler_enable=1
xdebug.profiler_output_dir=/opt/local/php_traces

; Debugging. You might need to specify your host with some additional options
xdebug.remote_enable=1[/CODE]
Posted
Filed under 01010101

설치

GitLab는 설치 문서를 참고 따라하기만 하면 설치 할 수 있습니다.
GitLab Installation Document


삽질 내용1.

메모리 문제 때문에 설치를 포기했습니다.

GitLab을 설치하기 전에 꼭 읽어봐야 하는 문서가 하나 더 있는데, 바로 requirements 문서 입니다.
이 문서 중에서 Memory 부분을 간과했다가, GitLab이 동작하지 않는 문제 때문에 하루종일 삽질을 했습니다.

 

Memory

  • 512MB is too little memory, GitLab will be very slow and you will need 250MB of swap
  • 768MB is the minimal memory size and supports up to 100 users
  • 1GB is the recommended memory size and supports up to 1,000 users
  • 1.5GB supports up to 10,000 users

KT ucloud 중에 Free Pack 으로 제공되는 가상 머신이 있는데, 이 가상 머신의 스펙은
CPU 0.5vCore, Memory 512MB, Disk 20GB
입니다.

바로 메모리 512MB 부분에서 문제가 되어서,
GitLab 이 동작하지 않았는데, 다른 머신에 설치를 해보니 아무런 문제 없이 잘 동작합니다.



삽질 내용 2.

MySQL 대신 MariaDB 를 사용하는 경우,
GitLab 설치 과정에서 필요한 Ruby MySQL library 가 설치되지 않는 문제가 있었습니다.


결국 이 문제는 MariaDB 를 지우고, MySQL 을 재설치해서 해결했습니다.