こんにちは、このチュートリアルを始める前に、「Laravel Reverb の究極ガイド: リアルタイム通知」を読むことをお勧めします。このチュートリアルでは、Laravel Reverb がすでにセットアップされ、ローカルで動作していることを前提としています。
まず、ポート接続がどのように機能するかを理解することが重要です。 Laravel Reverb は 2 つのポートを使用します。1 つは WebSocket への接続用、もう 1 つはサーバー通信用です。
この場合、パブリック アクセスにポート 443 を使用します。このポートは安全な HTTPS トラフィックを処理するため、Web ページにアクセスするユーザーにとって重要です。
WebSocket 通信には、ポート 6001 を使用します。このポートは、リアルタイム通信のためにサーバーによって内部的にのみ使用されるため、パブリックにアクセスできる必要はありません。
さて、.env を変更しましょう
REVERB_HOST="your.domain.com" # your domain name here REVERB_PORT=443 # The public port used by all clients on your website REVERB_SCHEME=https # Required for prod environment
nginx 設定に次のコードを追加します。
server { listen 443 ssl; listen [::]:443 ssl; server_name your.server.name; {{ssl_certificate_key}} {{ssl_certificate}} location /app/ { proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Scheme $scheme; proxy_set_header SERVER_PORT $server_port; proxy_set_header REMOTE_ADDR $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_pass http://0.0.0.0:6001; } location /apps { proxy_http_version 1.1; proxy_set_header Host $http_host; proxy_set_header Scheme $scheme; proxy_set_header SERVER_PORT $server_port; proxy_set_header REMOTE_ADDR $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "Upgrade"; proxy_pass http://0.0.0.0:6001; } }
ここで何をするの?この設定により、すべての WebSocket トラフィックが公開ポート 443 からポート 6001 の内部 WebSocket サーバーに安全にリダイレクトされ、クライアントとサーバー間の安全かつ効率的なリアルタイム通信が可能になります。
Apache 構成については、これらの投稿を参照してください。
設定が完了したら、次のステップはサービスを開始することです。実際のシナリオでは、Supervisor などのプロセス マネージャーを使用して、サービスが継続的に実行され、必要に応じて自動的に再起動されるようにする必要があります。
ただし、テスト目的の場合は、コマンド ラインからコマンドを手動で実行できます。
php artisan reverb:start --port=6001 --debug
これで、運用環境で WebSocket を使用する準備が整いました。すべてがスムーズに実行されることを確認するために、テストする前に必ずサービスを再起動し、キャッシュをクリアしてください。
このトピックをより深く理解するのに役立つ投稿。
これがあなたのスタートに役立つことを願っています!次の投稿でお会いしましょう。
以上が本番環境のLaravelリバーブの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。