SoapUI - http REST유틸이랄까...

크롬 HTTP REST 클라이언트들도 많은데...

SoapUI는 그것들보다 조금 더 섬세한 설정이 가능하고... 프로젝트 설정 등이 가능한... 유틸이다.

좀 더 편리하다.

언어별 API?라이브러리?도 지원되는듯하다. 라이브러리일듯...

 

REST방식 웹개발하면서 테스트를 이걸로 하면 편리할듯 싶다.

소규모 프로젝트에서 테스트코드 만드는건 상당히 성가시니까... 이걸로 프로젝트 형태로 테스트를 만들어놓고 그 프로젝트를 테스트에 저장해놔도 괜찮을듯.

http://www.soapui.org/

 

크롬애플리케이션은 이걸 쓰고있다.

https://plus.google.com/104025798250320128549/posts

 

 

Fiddler Http프로토콜 전송분석

http://fiddler2.com/

네트워크 분석툴

와이어샤크로도 할 수 있지만 이게 더 간편.

와이어샤크는 전체 네트워크의 모든 프로토콜을 모니터링 한다면 이건 http프로토콜만 골라서 할 수 있다.

크롬 개발자도구가 더 간편하기는 하지만... 화면 리다이렉트될때 기록이 안 남는 함은정이 있으니까..이것도쓰면 편해

APM설치 방법

http://linuxex.tistory.com/entry/%EB%A6%AC%EB%88%85%EC%8A%A4-%EC%84%9C%EB%B2%84%EC%9A%A9-%ED%95%84%EC%88%98%EC%84%A4%EC%B9%98-%ED%94%84%EB%A1%9C%EA%B7%B8%EB%9E%A8
클릭
위에것들을 먼저 한 다음에

apm이 리눅스 기본 설치할 때 다 설치가 되긴 하는데 작동이 잘 안된다.
뭐 어떻게 하는건지 더 어렵다. 그래서 수동으로 설치하는게 더 편하다.

rpm -qa httpd php mysql
깔려있는것을 확인하고

yum remove -y httpd php mysql
지운다.

그리고 수동으로 다시 깔기 위해 다운로드
cd /usr/local/src
mkdir apm
cd apm

www.apache.org ( httpd라고 된거 안정화 버전 다운로드 )
www.mysql.net ( 무료안정화버전 다운로드 )
www.php.net ( 안정화 버전 다운로드 )

wget 명령으로 다운로드
ls -al로 파일명을 확인 후
tar -zxvf 압축풀기

pwd
cd /usr/local/src/(mysql 압축푼폴더)

useradd -M -s /bin/false mysql (mysql 실행할 계정 생성)

./configure --prefix=/usr/local/server/mysql --with-charset=utf8 --with-extra-charsets=all (./configure \를 써넣으면 분할입력 가능, ./configure --help 가능 )

termcap 라이브러리 없다고 컴파일이 안됨..
configure: error: No curses/termcap library found
망할 rpm -qa로 검색하면 깔려있다.
termcap , libtermcap, libtermcap-devel
이 세개가 깔려있어야된다. 나는 세번째가 안 깔려있었다. centos 5.4
yum install libtermcap-devel ( 설치 )

make && make install (make와 make install 실행)

환경설정 시작
cp support-files/my-huge.cnf /etc/my.cnf (my-small, my-medium, my-large, my-huge 중에 메모리에 따라 선택 64m, 64~256m, 512m, 1g~)

db생성 및 디렉토리 권한

cd /usr/local/server/mysql (설치경로)
chown -R mysql .
chgrp -R mysql .
bin/mysql_install_db --user=mysql
chown -R root .
chown -R mysql var

cd /usr/local/server/mysql (설치경로)
(안되면 ./bin/mysql_install_db)
groupadd mysql
useradd -g mysql mysql
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/data
chgrp -R mysql /usr/local/mysql
chown -R root /usr/local/mysql/bin
cd /usr/local/mysql
./bin/mysqld_safe --user=root &

ps -ef | grep mysql (mysql설치를 확인)

vi ~/.bash_profile
PATH=$PATH:$HOME/bin:/usr/local/server/mysql/bin (으로 수정)

source ~/.bash_profile (변경한 환경변수 재시작 전에 바로 적용)

cp share/mysql/mysql.server /etc/init.d/mysqld
chkconfig --add mysqld
chkconfig --list | grep mysqld

mysql 실행 접속
/etc/init.d/mysqld start
mysql
   exit
mysqladmin -u root password (암호)
mysql (에러남.. 거부)
mysql -u root -p (암호 입력)

APACHE설치
cd httpd폴더
./configure \
--prefix=/usr/local/server/apache \
--enable-mods-shared=all \
--enable-so \
--enable-rewrite (\는 줄바꿔서 치게 도와줌 ./configure --prefix=/usr/local/server/apache --enable-mods-shared=all --enable-so --enable-rewrite )

make && make install
pwd (현재폴더확인 httpd 압축파일 폴더)
cp /usr/local/server/apache/bin/apachectl /etc/init.d/httpd

chkconfig --add httpd ( 자동실행 등록 안되면 밑에거 따라감)

vi /etc/init.d/httpd
2째줄부터 등록
#chkconfig: 2345 90 90
#description: init file for Apache server daemon
#processname: /usr/local/server/apache/bin/apachectl
#config: /usr/local/server/apache/conf/httpd.conf
#pidfile: /usr/local/server/apache/logs/httpd.pid

chkconfig --add httpd
chkconfig --list | grep httpd

vi /usr/local/server/apache/conf/httpd.conf
<IfModule !mpm_netware_module>
User nobody (nobody로 변경)
Group nobody
</IdModule>
ServerName 127.0.0.1(서버가 있으면 서버명)

/etc/init.d/httpd start

vi /etc/sysconfig/iptables (포트 개방 해 놨으면 넘어가면 됨)
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCETP
/etc/init.d/iptables restart

PHP설치
(잘못쓴게 아니고 이게 다 옵션이다)
./configure \
--prefix=/usr/local/server/php \
--with-apxs2=/usr/local/server/apache/bin/apxs \
--with-mysql=/usr/local/server/mysql \
--with-config-file-path=/usr/local/server/apache/conf \
--disable-debug \
--enable-safe-mode \
--enable-track-vars \
--enable-sockets \
--with-mod_charset \
--with-charset=utf8 \
--with-xml \
--with-language=korean \
--enable-mailparse \
--enable-calender \
--enable-sysvsem=yes \
--enable-sysvshm=yes \
--enable-ftp \
--enable-magic-quotes \
--enable-gd-native-ttf \
--enable-url-includes \
--enable-trans-id \
--enable-illine-optimization \
--enable-bcmath \
--with-jpeg \
--with-png \
--with-zlib \
--with-jpeg-dir=/usr \
--with-png-dir=/usr/lib \
--with-freetype-dir=/usr \
--with-libxml-dir=/usr \
--enable-exif \
--with-gd \
--with-ttf \
--with-gettext \
--enable-sigchild \
--enable-mbstring

libxml2-config 인가 때문에 에러가 난다.
configure: error: xml2-config not found. Please check your libxml2 installation.
(xm12라고 검색하는 경우도 있겠지...xm12-config, xm12,xm12-devel)
이것들을 최신으로 설치
yum install libxmli libxml2 libxml-devel libxml2-devel
설치된건 업데이트도 되고 알아서 된다.

make && make install

설치폴더 /usr/local/sever/php
환경설정 /usr/local/server/apache/conf

cp php.ini-dist /usr/local/server/apache/conf/php.ini

vi /usr/local/server/apache/conf/httpd.conf

<IfModule dir_module>
    DirectoryIndex index.html index.htm index.php
</IfModule>
<IfModule mime_module>
   AddType application/x-httpd-php .php
   AddType application/x-httpd-php-source .phps
</IfModule>

/etc/init.d/httpd restart

chcon -t texrel_shlib_t
/usr/local/server/apache/modules/libphp5.so

php의 정보를 보여주는 함수
vi /usr/local/server/apache/htdocs/phpinfo.php
<? phpinfo(); ?>
   ecs :wq

웹페이지로 사용할 때 설정파일을 손봐서 htdocs폴더를 이동하면 된다.

vi /usr/local/server/apache/conf/httpd.conf

extra/httpd-userdir.conf (일반 사용자 홈디렉토리 설정)
extra/httpd-vhosts.conf (여러개 계정 쓸때)

<VirtualHost 000.000.000.000:80> (도메인이 아닌 ip를 쓰는칸)
   ServerName first.naver.com
   DocumentRoot /usr/local/server/apache/htdocs
</VirtualHost>
<VirtuallHost 000.000.000.111:80>
   ServerName second.naver.com
   DocumentRoot /home/second/public_html
</VirtualHost>

이외에는 보면 알기 쉽게 돼 있다 패스