하드웨어단말기가 없을경우
oracle 사의 virtualbox 와 연동되어 사용가능한
android 가상 프로그램
https://www.genymotion.com
1. Linux, Mac, Windows 프로그램을 지원함으로 좋다.
2. 이미지를 만들지 않고 자체적으로 다운받아 써서 간편하다.
3. eclipse 와 연동시 편하다.
2015년 7월 6일 월요일
2015년 6월 13일 토요일
ioncube 설치
php 5.6 에 ioncube 설치

- download : http://downloads2.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz
- 압축해재 후 이동
- tar -xvf ./ioncube_loaders_lin_x86_64.tar.gz
- mv ioncube /usr/local
- php.ini 파일 수정
- 압축 해제한 폴더내에 각 php 버전별 so 파일 존재한다. 맞는 버전으로 load
- [ioncube]
zend_extension_ts=/usr/local/ioncube/ioncube_loader_lin_5.6_ts.so
zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.6.so
- apache 재시작 및 확인
- php -v
Zend guard loader 설치
php 5.6 에 zend guard loader 설치

- download : http://www.zend.com/en/products/loader/downloads#Linux 에서 버전에 맞는 파일 다운로드.
- 수행 명령:
- cp ZendGuardLoader.so /usr/lib64/
- /usr/local/apache/conf/php.ini 수정
- [Zend.loader]
zend_extension=/usr/lib64/ZendGuardLoader.so
zend_loader.enable = 1
zend_loader.disable_licensing = 0
zend_loader.obfuscation_level_support = 3
- apache 재실행 및 php -v 로 확인 아래의 내용이 나오면 정상 설치완료.
- truble shooting.
- 만약 php -v 로 확인시 symbol ~~ global 어쩌구 하면서 안될경우 apache 설치시 ./configure 파라미터중 --with-mpm=prefork 를 안넣고 설치해서 발생하는 오류다.
modsecurity 설치
apache 2.4.12 에 modsecurity 2.9.0설치
- download : https://www.modsecurity.org/tarball/2.9.0/modsecurity-2.9.0.tar.gz
- 수행 명령 :
- yum install expat expat-devel
./configure --with-apxs=/usr/local/apache/bin/apxs
make
make install
- apache 설정파일 변경
- vi /usr/local/apache/conf/httpd.conf
LoadFile /usr/lib64/libxml2.so
LoadFile /usr/lib64/liblua-5.1.so
LoadModule security2_module modules/mod_security2.so
rule 파일
mkdir /usr/local/apache/conf/modsecurity # rule 파일 저장위치
vi /usr/local/apache/conf/httpd.conf
Include conf/modsecurity/*.conf
/usr/local/apache/conf/modsecurity/{filename}.conf 로 rule 파일 생성 및 apache 재 기동
CenOS 6.6에 apache 2.4.12, php 5.6 소스 설치
apache 2.4.12
php 5.6 을 소스 설치 하였으며
의존성 관련 설치도 순서대로 다 나열하겠다.
apache 설치시 필요한 apr, apr-util, pcre 는 yum 으로 설치해도 가능하지만
아직 yum 의 apr, apr-util 버전이 apache 2.4.12 설치에 필요한 버전을 충족시키지 못한다.
이 글을 작성하는 현재는 yum 으로 설치한 apr, apr-util 은 버전의 문제가 있어 소스 설치 하였다.
설치 순서는 아래와 같다.
- apr
- apr-util
- pcre
- apache
- php
다음은 해당 내용을 설치하며 남긴 동영상이다.
php 5.6 을 소스 설치 하였으며
의존성 관련 설치도 순서대로 다 나열하겠다.
apache 설치시 필요한 apr, apr-util, pcre 는 yum 으로 설치해도 가능하지만
아직 yum 의 apr, apr-util 버전이 apache 2.4.12 설치에 필요한 버전을 충족시키지 못한다.
이 글을 작성하는 현재는 yum 으로 설치한 apr, apr-util 은 버전의 문제가 있어 소스 설치 하였다.
설치 순서는 아래와 같다.
- apr
- apr-util
- pcre
- apache
- php
- apr
- download : http://mirror.apache-kr.org//apr/apr-1.5.2.tar.gz
- 수행 명령 :
- yum install gcc
- ./configure --prefix=/usr/local/apr
- make
- make install
- configure 설명 :
- prefix : 설치할 위치
- apr-util
- download : http://mirror.apache-kr.org//apr/apr-util-1.5.4.tar.gz
- 수행명령 :
- ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr
- make
- make install
- configure 설명 :
- prefix : 설치할 위치
- with-apr : 참조할 apr 의 설치 위치
- pcre
- 수행명령 :
- yum install pcre pcre-devel
- apache
- download : http://apache.tt.co.kr//httpd/httpd-2.4.12.tar.gz
- 수행명령 :
- ./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --enable-module=so --enable-so --enable-mods-shared=all --with-mpm=prefork
- make
- make install
- configure 설명
- prefix : 설치할 위치
- with-apr : 참조할 apr의 설치 위치
- with-apr-util : 참조할 apr-util의 설치 위치
- enable-moduel=so : module 로드 관련으로 보입니다.
- enable-so : module 로드 관련으로 보입니다. 해당 파라미터가 없을경우 php 소스 설치시 오류가 발생
- enable-mods-shared=all : 공유 모듈에 대한것으로 보입니다.
- with-mpm=prefork : apache thread 관련으로 알고있는데 해당 파라미터가 없을경우 php 설치후 Zend guard loader 등의 설치시 php.ini에 등록해도 올라가질 않습니다.
- 기타 : with-mpm-prefork 파라미터 누락시 php.ini 에 zend guard loader, ioncube 등을 올려도 php -v 로 확인시 오류 메세지가 발생됩니다.
- php
- download : http://php.net/downloads.php
- 수행명령 :
- yum install perl perl-devel
- yum install libxml2 libxml2-devel
- yum install gd gd-devel
- ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache2/bin/apxs --with-config-file-path=/usr/local/apache2/conf --with-curl --enable-calendar --enable-shmop --enable-ftp --enable-sockets --disable-cgi --with-gd --with-png-dir=/usr/lib --with-zlib-dir --with-jpeg-dir=/usr/lib --with-freetype-dir=/usr/local/freetype --with-iconv --enable-mbstring
- make
- make install
- configure 설명 :
- prefix : 설치 위치
- with-apxs2 :apache apxs 위치
- with-config-file-path : php.ini 파일을 위치시킬 위치
- 기타 :configure 파라미터에 따라 우선적으로 설치해야할 의존성 패키지 들이 있습니다. configure 중 오류발생시 해당 오류에 맞는 패키지를 yum 으로 설치하면서 진행하면 이상 없이 진행이 가능합니다.
다음은 해당 내용을 설치하며 남긴 동영상이다.
라벨:
컴파일,
apache,
apache 2.4.12,
apache php 소스설치,
compile,
php,
php 5.6
2015년 4월 6일 월요일
apache tomcat 연동 (mod_jk)
아파치와 톰켓 연동방법
연동방식은 여려가지가 있다고 한다.
mod_jk, mod_proxy, mod_proxy_ajp
나는 mod_jk 방식을 설명한다.
1. apache 사이트에서 tomcat-connector 다운로드
http://tomcat.apache.org/download-connectors.cgi
2. 압축 해제 후 컴파일
# tar -xvf tomcat-connectors-1.2.40-src.tar.gz
# tomcat-connectors-1.2.40-src/native/configure --with-apxs=/usr/sbin/apxs
# make
# make install
- apxs 가 없을경우
yum install httpd-devel
- gcc 가 없을경우
yum install gcc
3. mod_jk 설치 확인
apache 모듈 폴더에 mod_jk.so 가 복사되었는지 확인한다.
cd /etc/httpd/modules
4. 아파치 설정파일 수정
vi /etc/httpd/conf/httpd.conf
# tomcat connector 모듈추가
LoadModule modules/mod_jk.so
Include conf.d/mod_jk.conf
# 만약 JkWorkersFile only allowed once 오류 발생시 mod_jk.conf 에 있는 JkWorkersFile conf/workers_jk.properties 줄을 주석 처리하고 다음줄의 주석 해제
# JkWorkersFile conf/workers_jk.properties
5. mod_jk 설정파일 추가
vi /etc/httpd/conf.d/mod_jk.conf
<IfModule mod_jk.c>
# Where to find workers.properties
JkWorkersFile conf/workers_jk.properties
# Where to put jk shared memory
JkShmFile run/mod_jk.shm
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
## url pattern 에 따른 connector mapping
##JkMountFile conf/uriworkermap.properties
</IfModule>
연동방식은 여려가지가 있다고 한다.
mod_jk, mod_proxy, mod_proxy_ajp
나는 mod_jk 방식을 설명한다.
1. apache 사이트에서 tomcat-connector 다운로드
http://tomcat.apache.org/download-connectors.cgi
2. 압축 해제 후 컴파일
# tar -xvf tomcat-connectors-1.2.40-src.tar.gz
# tomcat-connectors-1.2.40-src/native/configure --with-apxs=/usr/sbin/apxs
# make
# make install
- apxs 가 없을경우
yum install httpd-devel
- gcc 가 없을경우
yum install gcc
3. mod_jk 설치 확인
apache 모듈 폴더에 mod_jk.so 가 복사되었는지 확인한다.
cd /etc/httpd/modules
4. 아파치 설정파일 수정
vi /etc/httpd/conf/httpd.conf
# tomcat connector 모듈추가
LoadModule modules/mod_jk.so
Include conf.d/mod_jk.conf
# 만약 JkWorkersFile only allowed once 오류 발생시 mod_jk.conf 에 있는 JkWorkersFile conf/workers_jk.properties 줄을 주석 처리하고 다음줄의 주석 해제
# JkWorkersFile conf/workers_jk.properties
<VirtualHost *:80> 하단에 아래 내용 추가
JkMountCopy On
5. mod_jk 설정파일 추가
vi /etc/httpd/conf.d/mod_jk.conf
<IfModule mod_jk.c>
# Where to find workers.properties
JkWorkersFile conf/workers_jk.properties
# Where to put jk shared memory
JkShmFile run/mod_jk.shm
# Where to put jk logs
JkLogFile logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
# Select the timestamp log format
JkLogStampFormat "[%a %b %d %H:%M:%S %Y] "
## url pattern 에 따른 connector mapping
##JkMountFile conf/uriworkermap.properties
</IfModule>
6. tomcat WAS worker 설정파일 추가
vi /etc/httpd/conf/workers_jk.properties
#worker.list=worker1, worker2
worker.list=worker1
## server 1
worker.worker1.port=8009
worker.worker1.host=server1
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
## server 2
#worker.worker2.port=8009
#worker.worker2.host=server2
#worker.worker2.type=ajp13
#worker.worker2.lbfactor=1
7. WAS 에서 처리해야 할 목록 정의
vi /etc/httpd/conf/uriworkermap.properties
## Mapping the URI /service1 under worker1
#/service1/*.do=worker1
#/service1/*.jsp=worker1
# /service2 요청으로 들어온 것은 worker2 로 mount
#/service2/*=worker2
# png와 jpg 는 apache 가 처리
#!/service2/*.png=worker2
#!/service2/*.jpg=worker2
## 아래와 같이 설정하면 모든 요청(jsp, do, image, js등)을 tomcat으로 보내서 처리
한다.
/*=worker1
8. Tomcat server.xml 에서 AJP1.3 Connector 부분 주석 제거하고 테스트.
2015년 4월 5일 일요일
리눅스 시작프로그램 등록 chkconfig
리눅스 시작프로그램 등록방법.
1. /etc/rc.d/init.d 에 서비스 스크립트 등록
스크립트 상단에 아래의 주석 알맞게 수정하여 등록 ( chkconfg 등록시 정보로 사용되어지는 주석임 )
chkconfig : 345 85 15
의 345 는 런레벨 3, 4, 5의 뜻임. 런레벨은 구글에 '리눅스 런레벨' 검색.
85 는 데몬실행 우선순위
15 는 데몬 종료 우선순위임.
#!/bin/bash
#
# svn_custom Startup script for the SVN Server
#
# chkconfig: 345 85 15
# description: start stop restart SVN server
# processname: svn_custom
case "$1" in
start) #start
echo -n "Starting svn server"
#daemon svnserve -d -r /home/svn/svn_repo
svnserve -d -r /home/svn/svn_repo
echo
;;
stop) #stop
echo -n "Stopping svn server"
#daemon pkill 'svnserve'
pkill 'svnserve'
echo
;;
restart) #restart
$0 stop
$0 start
;;
*) #etc doesn't insert param
echo "Usage:$0 {start|stop|restart}"
exit 1
esac
exit 0
2. 생성한 스크립트 테스트
root # service svn_custom restart
3. chkconfig 에 등록
chkconfig --add 스크립트명
4. chkconfig 등록 확인
chkconfig --list
5. OS 재시작하여 확인인인
1. /etc/rc.d/init.d 에 서비스 스크립트 등록
스크립트 상단에 아래의 주석 알맞게 수정하여 등록 ( chkconfg 등록시 정보로 사용되어지는 주석임 )
chkconfig : 345 85 15
의 345 는 런레벨 3, 4, 5의 뜻임. 런레벨은 구글에 '리눅스 런레벨' 검색.
85 는 데몬실행 우선순위
15 는 데몬 종료 우선순위임.
#!/bin/bash
#
# svn_custom Startup script for the SVN Server
#
# chkconfig: 345 85 15
# description: start stop restart SVN server
# processname: svn_custom
case "$1" in
start) #start
echo -n "Starting svn server"
#daemon svnserve -d -r /home/svn/svn_repo
svnserve -d -r /home/svn/svn_repo
echo
;;
stop) #stop
echo -n "Stopping svn server"
#daemon pkill 'svnserve'
pkill 'svnserve'
echo
;;
restart) #restart
$0 stop
$0 start
;;
*) #etc doesn't insert param
echo "Usage:$0 {start|stop|restart}"
exit 1
esac
exit 0
2. 생성한 스크립트 테스트
root # service svn_custom restart
3. chkconfig 에 등록
chkconfig --add 스크립트명
4. chkconfig 등록 확인
chkconfig --list
5. OS 재시작하여 확인인인
피드 구독하기:
글 (Atom)