私のサーバーはdjangoを実行しているWebfactionです。現在、インスタント メッセージングをアプリに追加する必要があります。したがって、サーバーに 9090 などの別のポート番号をリッスンさせて、ソケット接続を受け入れる必要があります。しかし、webfaction は開発者に 80 ポートしか開いていないようです。そのため、webfaction で他のポート番号を開いて単純なインスタント メッセージングを実装する方法を教えてください。[追加] XMPP(openfire) や QuickBlox のようなものは使いたくありません。独自のインスタント メッセージングを実装したいだけです...
2 に答える
Webfaction コントロール パネルで、 をクリックしDomains/Websites -> Applications -> Add new application
ます。App category
プルダウンで を選択し、Custom
で をApp type
選択しますCustom app (listening on port)
。次に、次のテキストが表示されます(強調は私のものです):
このインストーラーは、カスタム ソフトウェアがリッスンできる非特権ポートを割り当てます。
これにより、便宜上 ~/webapps// ディレクトリが作成されます。ただし、カスタム アプリケーションはそこに常駐する必要はありません。
インストーラーが終了したら、「ポート」フィールドで指定されたポート番号をリッスンするようにカスタム ソフトウェアを構成します。アプリケーションが Web サイト レコードで構成されている場合、フロントエンド サーバーは、指定された URL で着信要求を割り当てられたポートにプロキシします。
注: カスタム アプリケーションは、HTTP トラフィックの処理を目的としています。ポートに直接アクセスする必要がある場合は、サポート チケットを開いて、割り当てられたポートへのアクセスをリクエストしてください。
カスタム アプリケーションのドキュメントは、http: //docs.webfaction.com/software/custom.htmlで入手できます。Webサイトのレコード ドキュメントは、http: //docs.webfaction.com/user-guide/websites.htmlで入手できます。
そのため、インスタント メッセージング アプリが HTTP を介して通信するか、ポートへの直接アクセスを介して通信するかを決定し、それに応じて対応する必要があります。物事を単純にするために、HTTP を使用することをお勧めしますが、選択はあなた次第です。ただし、最初にカスタム アプリケーションのドキュメントをよく読んでください。これは真のカスタム アプリになるため、サーバーがまだ実行されているかどうかを確認し、必要に応じて定期的に再起動し、cron
ジョブを適用し、負荷の増加に合わせて実行するサーバー インスタンスの数を増やすなどのロジックを記述する必要があります。
幸運を!