ios2015. 1. 26. 21:10

https://www.apachefriends.org/download.html

가서 xampp 설치 

(php , mysql , apache ) 다 설치될것이다. 

다 설치하고 아래의 위치로 이동          

xampp_start를 실행하면 실행될것이다. 실행하고 xampp-control을 열면

다 실행시킬필요는 없지만 실행시킨다. 

로컬디스크/xampp/htdocs/xampp로 이동시킨다.

index.html을 변경시킬것이다.

index.html 을 메모장으로 열어서 코드를 수정한다.

apns.pem 파일을 만든는건 찾아보면 나올꺼같은데...

(참고했던 사이트 : http://qnibus.com/blog/how-to-make-certification-for-apns/ ) <-- 감사합니다. 좋을글 올려주셔서


그리고 apns.pem파일은 현재 위치에다가 이동시킨다. 위에 그림에 보면 2번째라인에 4번째 파일이 보인다.(apns.pem)

코드는      아이군님의 블로그를 참조했다. ( http://theeye.pe.kr/archives/1454 )

<?php


$deviceToken = '67813b2...af1424b'; // 디바이스토큰ID 를 넣으면 된다.

$message = 'Message received from eye'; // 전송할 메시지 


// 개발용

$apnsHost = 'gateway.sandbox.push.apple.com';

$apnsCert = 'apns.pem'; <-   만든 pem를 넣으면 된다. (난 apns.pem으로 만들었다)


// 실서비스용

//$apnsHost = 'gateway.push.apple.com';

//$apnsCert = 'apns-production.pem';


$apnsPort = 2195;


$payload = array('aps' => array('alert' => $message, 'badge' => 0, 'sound' => 'default'));

$payload = json_encode($payload);


$streamContext = stream_context_create();

stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);


$apns = stream_socket_client('ssl://'.$apnsHost.':'.$apnsPort, $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext);


if($apns)

{

  $apnsMessage = chr(0).chr(0).chr(32).pack('H*', str_replace(' ', '', $deviceToken)).chr(0).chr(strlen($payload)).$payload;

  fwrite($apns, $apnsMessage);

  fclose($apns);

}

?>

index.html을 바꾼 코드

<?php

 

$deviceToken = '64eb9af591e2674a2fedafdsfdfdd29ad0b30ffc2e2d0ddd2af2342jjfsd3ssd'; 

// 디바이스토큰ID  본인꺼 넣어야 함

$message = 'iphone push test'; // 전송할 메시지

 

// 개발용

$apnsHost = 'gateway.sandbox.push.apple.com';

$apnsCert = 'apns.pem';                  //이 파일은 C:\xampp\htdocs\xampp 에 위치한다.


// 실서비스용

//$apnsHost = 'gateway.push.apple.com';

//$apnsCert = 'apns-production.pem';

 

$apnsPort = 2195;

 

$payload = array('aps' => array('alert' => $message, 'badge' => 1, 'sound' => 'default'));

$payload = json_encode($payload);

 

$streamContext = stream_context_create();

stream_context_set_option($streamContext, 'ssl', 'local_cert', $apnsCert);

 

$apns = stream_socket_client('ssl://'.$apnsHost.':'.$apnsPort, $error, $errorString, 2, STREAM_CLIENT_CONNECT, $streamContext);

 

if($apns)

{

  $apnsMessage = chr(0).chr(0).chr(32).pack('H*', str_replace(' ', '', $deviceToken)).chr(0).chr(strlen($payload)).$payload;

  fwrite($apns, $apnsMessage);

  fclose($apns);

}

?>

<html>

<head>

<meta name="author" content="Kai Oswald Seidler">

<meta http-equiv="cache-control" content="no-cache">

<!--<?php include("lang/".file_get_contents("lang.tmp").".php"); ?> -->

<title>XAMPP <?php include('.version');?></title>


<frameset rows="74,*" marginwidth="0" marginheight="0" frameborder="0" border="0" borderwidth="0">

    <frame name="head" src="head.php" scrolling=no>

<frameset cols="150,*" marginwidth="0" marginheight="0" frameborder="0" border="0" borderwidth="0">

    <frame name="navi" src="navi.php" scrolling=no>

    <frame name="content" src="start.php" marginwidth=20>

</frameset>

</frameset>

</head>

<body bgcolor=#ffffff>

</body>

</html>

실행할 페이지

http://127.0.0.1/xampp/index.php  <-- 이걸 실행하면 됨~~~


Posted by NeverTry