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";
}