2012-07-02 3 views
2

저는 소켓 프로그래밍에 익숙하지만 PHP로 많은 코딩 작업을하고 있습니다. 일부 소켓 서버 예제 코드를 테스트하고 localhost와 잘 작동합니다. CLI를 사용하여 서버를 실행합니다. 하지만 내 관심사는 어떻게 호스팅 서버에서 소켓 서버 .php 파일을 실행합니까? 호스팅 제공 업체는 일반적으로 서버를 실행하기 위해 CLI에 액세스 할 수 있습니까? 내 서버가 항상 실행되고 있는지 어떻게 확인합니까? 호스팅 서버가 다시 시작되면 내 서버는 어떻게됩니까? 내 서버가 (어떤 이유로 든) 충돌하는 경우 수동으로 실행해야합니까? 누군가 도움을 줄 수 있습니까?PHP 소켓 서버

+0

체크 아웃 : http://stackoverflow.com/questions/4262543/what-are-good-resources-for-learning-html-5-websockets –

답변

2

귀하의 제공 업체가 귀하에게 ssh 액세스 권한을 부여하는지 여부는 확실하지 않습니다. 일부 공급자가하지만 그것을 관리 서버 또는 루트 서버 않습니다.

그런 다음 CLI를 통해 스크립트를 실행할 수 있습니다.

CLI를 통해 서버를 실행할 수 있고 충분한 권한이있는 경우 스크립트를 런레벨에 삽입 할 수 있습니다. 그리고 "shebang"이라고하는 무언가가 있습니다. 이것을 사용하면 스크립트에서 PHP 인터프리터를 지시하고 PHP 명령없이 스크립트를 실행할 수 있습니다.

php test.php or /usr/bin/php testScript.php 

당신은 test.php로 직접 실행 귀하의 스크립트를 실행하거나 스크립트 만 testScript 이름을 지정할 수 있습니다.

당신이 (데비안) /usr/지방/빈 당신이 PHP 명령과 같은 명령을 통해 매번 실행할 수에 스크립트를 넣어합니다.

편집 : 나는 뭔가를 잊어 버렸습니다. 이 솔루션의 경우 /etc/init.d/skeleton/etc/init.d/runPHPSocketServer으로 복사하고 맨 위에 스크립트 값을 변경해야합니다. 그런 다음이를 런레벨에 삽입 할 수 있습니다.

#: testScript or runPHPSocketServer start 

스크립트가 실행 가능한 디렉토리 아래에 있으면 시스템 런레벨에 삽입 할 수 있습니다.

#: update-rc.d runPHPSocketServer defaults 

그래서 몇 가지 해결책이 있지만 대부분의 솔루션에는 ssh 액세스가 필요합니다.

3

당신이 호스팅 서버에 대해 이야기하고 있다면 나는 당신이 공유 호스팅에 대해 이야기하고 있다고 기대합니다. 그 경우에 서비스를 운영하는 등 관리가된다면 안정적으로 유지하기가 어려울 것입니다. 적어도 VPS를 사용하는 것이 좋습니다. 이렇게하면 백그라운드에서 실행할 수 있으며 재부팅 할 때 자동으로 시작하지만 소프트웨어를 설치하여 프로세스를 확인하고 실패한 경우 다시 시작합니다.

예 : 공유 호스팅에서 재부팅 시작 작동 여부를 테스트하는 것은 불가능합니다.