php sockets 동적 모듈 설치 ( php socket )

by 조쉬 posted Mar 18, 2016
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄

1. 설치

 

cd /usr/local/APM_Setup/php-5.2.9/ext/sockets    // php 소스 폴더의 ext/sockets 디렉토리로 이동 

/usr/local/php/bin/phpize

./configure --enable-sockets --with-php-config=/usr/local/php/bin/php-config

make

cp -arp modules/sockets.so /usr/local/php/modules    // modules 디렉토리는 예시로 만들어준 것

 

2. 연동

php.ini 파일을 열어서 [sockets] 항목에 아래와 같이 sockets.so 파일을 추가해줍니다.

 

vi /usr/local/apache/conf/php.ini

extension=/usr/local/php/modules/sockets.so

 

그리고 아파치를 재시작 해주면 적용이 완료됩니다.

 

/usr/local/apache/bin/apachectl restart


*참고

해당 모듈이 정상적으로 되었는지 확인해보는 테스트 php 생성 (실제로 적용시에는 주석을 해제한다.)

# <?

define("_IP",    "123.123.123.123");

define("_PORT",  "3389");

$socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); // 소켓 생성

$con = socket_connect($socket, _IP, _PORT); // 소켓을 IP와 PORT에 결합

socket_write($socket, "msg\n"); // 소켓 메세지 전송

socket_close($socket); // 소켓 닫기


if ($socket === false) {

    echo "socket_create() 실패! 이유: " . socket_strerror(socket_last_error()) . "\n";

} else {

    echo "socket 성공적으로 생성.\n";

}


if ($con === false) {

    echo "socket_connect() 실패.\nReason: ($result) " . socket_strerror(socket_last_error($socket)) . "\n";

} else {

    echo "다음 주소로 연결 성공 : $address.\n";

}

#  ?>