1

これは答えるのが本当に簡単な質問に違いありませんが、私はどこにも解決策を見つけることができないようです. 私は、Windows Server 2008 で運用したい Play フレームワーク 2 アプリケーションを持っています。ポート 80 8080 と 443 だけを外部に開いています。私はこれで私のプレイアプリケーションを開始します:

play -Dhttp.port=80 "run 80"

しかし、「/0.0.0.0:80 にバインドできませんでした」というエラーが表示されます。

play -Dhttp.port=8080 "run 8080"

http://sometestingurl.pt:8080/indexと入力して Web アプリケーションへの外部アクセスを取得できますが、URL にポート番号を付けたくありません。これどうやってするの?

ありがとう

4

3 に答える 3

2

アプリケーションを本番モードで実行する場合、Play からのアドバイスは run コマンドを使用せず、代わりにタスクstartの実行後に生成されるスクリプトを使用することです。dist

タスクを実行distしてサーバー上でアプリケーションを解凍したら、次のコマンドでアプリケーションを起動し、ポート 80 にバインドします。

start -Dhttp.port=80
于 2013-05-28T23:26:10.900 に答える
0

Play バージョン 2.2.2 を使用しています。次のソリューションは、CentOS 6.5 でテストされています。

サーバーにソース コード フォルダーがある場合:

  1. プロジェクトディレクトリに移動します
  2. sudo play "start -Dhttp.port=80"

エラーが発生する可能性がありますsudo: play: command not found。この問題を解決するには、次のようにします。

  1. 「ナノ/etc/sudoers」
  2. 「secure_path」の前に「#」を追加します(この行をコメントアウトします)
  3. 次に、プロジェクト ディレクトリに戻り、手順 2) を繰り返します。sudo play "start -Dhttp.port=80"

コードを本番サーバーにデプロイする場合は、次のようにします。

  1. プロジェクトディレクトリにcdします
  2. play dist-> このコマンドは、ターゲット/ユニバーサル ディレクトリに .zip ファイルを生成します。
  3. この .zip ファイルを本番サーバーに転送します
  4. .zip ファイルを解凍しますunzip yourfile.zip
  5. ファイルが解凍された後:
    cd your_unzipped_folder/bin
  6. アプリケーション名と同じ名前のファイルがあるはずです。起動するには:
    sudo nohup ./yourapp -Dhttp.port=80
于 2014-06-12T08:38:08.490 に答える