>  Q&A  >  본문

중급 및 고급 프로그래머를 위한 고급 학습인 PHP+Swoole을 사용한 실시간 웹 채팅

클라이언트 디렉터리를 Nginx/Apache의 가상 호스트 디렉터리로 구성하여 client/index.html에 액세스할 수 있도록 합니다. IP와 포트가 해당 구성이 되도록 client/config.js를 수정합니다. php webim_server.php 자세한 배포 지침 1. 작곡가 설치(php 종속성 패키지 도구)

curl -sS https://getcomposer.org/installer | php mv 작곡가.phar /usr/local/bin/composer 참고: 그렇지 않은 경우 PHP 인터프리터 프로그램은 환경 변수 PATH로 설정되어 있으므로 설정해야 합니다. 작성기 파일의 첫 번째 줄은 #!/usr/bin/env php이므로 수정할 수 없습니다.

2.composer install

PHPWebIM 프로젝트 디렉터리로 전환하고 작곡가 설치 명령을 실행합니다. 속도가 매우 느린 경우

composer install --prefer-dist 3.Ningx/Apache 구성(swoole_framework에서 제공하는 Web AppServer는 여기서는 사용되지 않음)

nginx

server
{
    listen       80;
    server_name  im.swoole.com;
    index index.shtml index.html index.htm index.php;
    root  /path/to/PHPWebIM/client;
    location ~ .*\.(php|php5)?$
    {
        fastcgi_pass  127.0.0.1:9000;
        fastcgi_index index.php;
        include fastcgi.conf;
    }
    access_log  /Library/WebServer/nginx/logs/im.swoole.com  access;
}

apache

<VirtualHost *:80>
    DocumentRoot "path/to/PHPWebIM/client"
    ServerName im.swoole.com
    AddType application/x-httpd-php .php
    <Directory />
        Options Indexes FollowSymLinks
        AllowOverride None
        Require all granted
        DirectoryIndex index.php
    </Directory>
</VirtualHost>

4. 구성 수정 PHPWebIM/config.php

$config['server'] = array(
    //监听的HOST
    'host' => '0.0.0.0',
    //监听的端口
    'port' => '9503',
    //WebSocket的URL地址,供浏览器使用的
    'url' => 'ws://127.0.0.1:9503',
);

server.host server.port 항목은 WebIM 서버, 즉 WebSocket의 IP 및 포트입니다. 다른 옵션은 특정 상황에 맞게 server.url을 수정합니다. 서버 IP 또는 도메인 이름과 웹소켓 서비스의 포트를 수정하는 데 사용됩니다. 채팅 기록이 저장되는 디렉터리입니다.

5. WebSocket 서버 시작 php PHPWebIM/webim_server.php IE 브라우저는 WebSocket을 지원하지 않으므로 flash_policy에서 해당 포트를 수정해야 합니다. php를 선택한 다음 flash_policy.php를 시작합니다. php PHPWebIM/flash_policy.php 6. 호스트 바인딩 및 채팅 창 액세스(선택 사항) URL이 IP:PORT를 직접 사용하는 경우 여기에서는 설정이 필요하지 않습니다. vi /etc/hosts 127.0.0.1 추가 im.swoole.com 브라우저로 열기: http://im.swoole.com


蘑菇宝蘑菇宝2164일 전1431

모든 응답(0)나는 대답할 것이다

답장 없음
  • 취소회신하다