티스토리 뷰

반응형

이제 양방향 통신도 시도한다.

우리가 보통 스포츠 경기나 기타 웹사이트에서 실시간 경기수나 어떤 것들이 변하는 것을 서로 데이터를 갖고 싶을때 구현하는 기술이 바로 websocket기술일 것이다.

카페24 서버에 어떻게 composer 설치하고 ratchet 설치하나 과정을 들여다 본다.

 

양방향 통신을 위해 꼭 필요한 것!

// composer로 설치된 Ratchet 라이브러리 필요 require 'vendor/autoload.php'; 이것을 하려면 구체적으로 어떻게 해야 하지?

 

`Ratchet`은 WebSocket 서버를 PHP로 쉽게 구축할 수 있도록 도와주는 라이브러리입니다. 이를 사용하려면 먼저 `composer`를 설치해야 합니다. `composer`는 PHP에서 사용하는 패키지 관리자로, 라이브러리나 프로젝트의 의존성을 관리해주는 도구입니다.

아래는 `composer`와 `Ratchet`을 설치하는 방법입니다:

1. `composer` 설치
   - 윈도우의 경우: [https://getcomposer.org/Composer-Setup.exe](https://getcomposer.org/Composer-Setup.exe) 링크에서 설치 파일을 다운받아 설치하면 됩니다.
   - 리눅스나 macOS의 경우: 터미널에서 아래의 명령어를 입력합니다.
     ```
     curl -sS https://getcomposer.org/installer | php
     mv composer.phar /usr/local/bin/composer
     ```

2. `Ratchet` 설치
   - `composer`를 이용해 `Ratchet` 라이브러리를 설치합니다. 터미널에서 프로젝트 디렉토리로 이동한 후 아래의 명령어를 입력합니다.
     ```
     composer require cboden/ratchet
     ```

3. 설치가 끝나면, `require 'vendor/autoload.php';` 코드를 통해 `Ratchet` 라이브러리를 프로젝트에 로드할 수 있습니다.

위의 과정을 통해 `composer`와 `Ratchet`을 설치하고 사용할 수 있습니다. 웹소켓 서버를 구현하는 과정에서 문제가 생기면 언제든지 질문해주세요.

 

composer setup에서 choose the command-line PHP you want to use: 위의 선택창에서 어떻게 해야 하나?
"choose the command-line PHP you want to use:"는 설치 과정에서 컴퓨터에 설치된 PHP의 실행 파일 경로를 선택하라는 메시지입니다.
여기서는 PHP의 실행 파일인 php.exe 파일의 경로를 지정해야 합니다.
일반적으로 PHP를 설치할 때 'php.exe' 파일은 PHP의 설치 디렉토리 내에 위치합니다.

디렉토리의 경로는 설치 방식과 운영체제에 따라 다르지만, 일반적으로 다음과 같은 경로에 있을 수 있습니다.
- Windows의 경우: `C:\php\` 또는 `C:\xampp\php\` 등 - macOS의 경우: `/usr/bin/php` 또는 `/usr/local/bin/php` 등 - Linux의 경우: `/usr/bin/php` 등 해당 경로를 찾아서 선택해주시면 됩니다.

파일 탐색기나 터미널을 이용해서 PHP가 설치된 경로를 찾아볼 수 있습니다.

또한, 터미널에 `where php` (Windows) 또는 `which php` (Linux/macOS) 명령어를 입력하면 PHP 실행 파일의 경로를 찾아볼 수 있습니다.

찾아낸 php.exe 파일의 경로를 선택창에 입력하시면 됩니다. 만약 여전히 문제가 있다면, PHP의 설치 상태를 확인하거나 필요하다면 재설치를 고려해 보세요.
웹 호스팅 서버에서 `Composer`와 `Ratchet`을 사용하려면, 서버가 해당 툴과 라이브러리를 지원해야합니다.

일반적으로, 다음과 같은 단계를 거쳐 설치를 진행할 수 있습니다.

1. **SSH 접속**: 서버에 SSH로 접속합니다. 이때 필요한 접속 정보는 호스팅 서비스 제공자로부터 받을 수 있습니다.

2. **Composer 설치**: 서버에서 Composer를 설치합니다. 터미널에 아래의 명령어를 입력하여 설치를 진행할 수 있습니다. ``` curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer ``` 위의 명령어는 서버에 관리자 권한이 있어야 사용 가능합니다. 이 권한이 없는 경우, 설치할 디렉토리 내에서 `php composer.phar` 명령어로 composer를 실행할 수 있습니다.

3. **Ratchet 설치**: 이제 Composer를 이용해서 Ratchet 라이브러리를 설치할 수 있습니다. 프로젝트 디렉토리로 이동 후 아래의 명령어를 실행합니다. ``` composer require cboden/ratchet ```

4. **코드 작성**: 위에서 제시된 예제 코드를 작성하고, `php websocket_server.php` 명령어를 실행하여 웹소켓 서버를 시작합니다.

5. **서버 설정**: 이제 웹소켓 서버가 작동하고 있습니다만, 일반적으로 HTTP/HTTPS를 통해 웹 페이지를 제공하는 웹서버와 웹소켓 서버는 다른 포트를 사용합니다. 따라서 웹서버 설정(예: Apache나 Nginx 설정)을 통해 웹소켓 서버가 사용하는 포트를 열어주어야 합니다.

이 설정 방법은 사용하는 웹서버 종류에 따라 다릅니다.
만약, 웹 호스팅 서버가 SSH 접속을 허용하지 않거나, 웹소켓 또는 Composer를 지원하지 않는다면, 웹소켓 기능을 사용하기 위해서는 VPS(Virtual Private Server)나 클라우드 서버 같은 보다 고급 호스팅 옵션을 검토해 보아야 할 수 있습니다.

이 경우, 서버 운영에 대한 기술적 지식이 필요하므로 개발자나 시스템 관리자의 도움을 받는 것이 좋습니다.

 

git bash에서 실행함.

curl -sS https://getcomposer.org/installer | php
mv composer.phar /usr/local/bin/composer

composer require cboden/ratchet
Git Bash를 사용해 원격 서버에 접속하기 위해서는 SSH (Secure Shell) 명령어를 사용합니다. 기본적인 접속 방법은 다음과 같습니다:

1. **Git Bash 실행**: 먼저 Git Bash 프로그램을 실행합니다.

2. **SSH 접속 명령어 입력**: SSH 명령어의 기본 형태는 `ssh username@hostname` 입니다. 여기서 username은 원격 서버의 사용자 이름, hostname은 원격 서버의 도메인 이름 혹은 IP 주소를 의미합니다. 예를 들어, 사용자 이름이 `myuser`이고 원격 서버의 주소가 `j-techel.co.kr`이라면, 다음과 같이 입력합니다: ``` ssh myuser@j-techel.co.kr ```

3. **비밀번호 입력**: 명령어를 입력하고 엔터를 누르면, 사용자 비밀번호를 입력하라는 프롬프트가 나타납니다. 해당 비밀번호를 입력하고 다시 엔터를 누르면 SSH 접속이 완료됩니다. 만약 서버가 특정 포트를 사용하도록 설정되어 있다면, `-p` 옵션을 통해 포트 번호를 명시할 수 있습니다. 예를 들어, 포트 번호가 `2222`라면, 다음과 같이 입력합니다: ``` ssh -p 2222 myuser@j-techel.co.kr ``` 이 방법은 원격 서버가 SSH 접속을 허용하고, 사용자 이름과 비밀번호 (또는 SSH 키) 등의 접속 정보를 가지고 있을 때 사용할 수 있습니다. 만약 접속 정보가 없거나, SSH 접속이 허용되지 않는다면 웹 호스팅 업체에 문의하여 필요한 정보를 확인해야 합니다.

마지막으로 설정이 필요함

Composer를 `/usr/local/bin`에 이동하려고 했지만 해당 경로가 존재하지 않아서 실패했습니다.

또한, `composer` 명령이 인식되지 않아서 Composer를 사용할 수 없습니다.

이 문제를 해결하기 위해 다음 두 가지 방법을 사용해보세요. **

1. 현재 디렉터리에서 `composer.phar` 사용** 현재 디렉터리에 `composer.phar` 파일이 있는 것을 확인했습니다. 이 파일은 실행 가능한 Composer 바이너리입니다. `composer.phar`를 직접 사용해서 Ratchet 라이브러리를 설치해보세요. 다음 명령을 입력해보세요:

```bash php composer.phar require cboden/ratchet ``` **

2. PATH에 Composer 추가** `composer` 명령을 전역에서 사용하려면, Composer 바이너리가 있는 디렉터리를 시스템의 `PATH`에 추가해야 합니다.

`composer.phar` 파일을 `/usr/local/bin`에 이동하려 했지만 해당 경로가 없으므로, 다른 경로를 사용해야 할 수도 있습니다. 먼저, 다음 명령으로 현재 사용자의 홈 디렉터리에 `bin` 디렉터리를 만드세요:

```bash mkdir ~/bin ```

그런 다음, `composer.phar` 파일을 이 디렉터리에 이동하고 이름을 `composer`로 변경하세요:

```bash mv composer.phar ~/bin/composer ```

마지막으로, `~/.bashrc` 파일에 다음 줄을 추가하여 `~/bin` 디렉터리를 `PATH`에 추가하세요:

```bash echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc ```

이후 새로운 터미널 세션을 열거나 현재 세션에 다음 명령을 입력하여 변경 사항을 적용하세요:

```bash source ~/.bashrc ```

이렇게 하면 `composer` 명령을 어디서나 사용할 수 있게 됩니다.

휴 성공적으로 설치했네요~

이제 윈소켓으로 양방향 프로그램?... 아직 갈길은 멀지만, 기분은 좋습니다.

반응형
댓글