ホームページ > バックエンド開発 > PHPチュートリアル > 本番環境のLaravelリバーブ

本番環境のLaravelリバーブ

Mary-Kate Olsen
リリース: 2024-11-30 14:32:15
オリジナル
1019 人が閲覧しました

Laravel Reverb in Production Environment

こんにちは、このチュートリアルを始める前に、「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 構成については、これらの投稿を参照してください。

  • https://github.com/laravel/framework/Discussions/50675
  • https://github.com/laravel/reverb/issues/107#issuecomment-2019340122

設定が完了したら、次のステップはサービスを開始することです。実際のシナリオでは、Supervisor などのプロセス マネージャーを使用して、サービスが継続的に実行され、必要に応じて自動的に再起動されるようにする必要があります。

ただし、テスト目的の場合は、コマンド ラインからコマンドを手動で実行できます。

php artisan reverb:start --port=6001 --debug
ログイン後にコピー

これで、運用環境で WebSocket を使用する準備が整いました。すべてがスムーズに実行されることを確認するために、テストする前に必ずサービスを再起動し、キャッシュをクリアしてください。

このトピックをより深く理解するのに役立つ投稿。

  • https://laravel.com/docs/11.x/reverb#production
  • https://medium.com/@saddanfah/how-to-use-laravel-reverb-in-production-server-d89e9670b76a

これがあなたのスタートに役立つことを願っています!次の投稿でお会いしましょう。

以上が本番環境のLaravelリバーブの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート