2016-12-26 7 views
2

make run.byteを実行すると、このエラーが発生します。ocsigenserver: ocsigen:main: Fatal - You are not allowed to use port 80.。私はsudo make run.byteを試しましたが、sudoはopamやocsigenserverについて知らない。私はwwwuserでMakefile.optionsを試してみましたが、動作させることはできません。 蒸留所で生成されたREADMEには多くの情報がありません。オンラインでは何も見つかりません。ocsigenserver:ポート80を使用することはできません

make test.byteは問題ありません。

どうぞよろしくお願いします。

編集: eliom/ocamlとは関係ないようですが、非rootユーザーはUbuntuの1024より小さいポートでは何も実行できません。しかし、私は、私のwwwuserが私であれば蒸留所が私がそれを行うことができると示唆しているのはまだ分かりませんが、これはこれまでに働く方法はないと思います。 私はまた、どのように私はsudo make run.byteを実行するはずですが、opamが私の〜ディレクトリにインストールされているとsudoはocsigenserverを見つけることができません。 私はrootとしてすべてを実行することで動作させることができますが、いつでもopamコマンドをrootとして実行すると、私はyou shouldn't use opam as root警告を受け取ります。私はこれが私がそれを実行するはずの方法だとは思わない。何かがおかしい。 eliomの以前のリリース(eliom.5.0.0)で

+1

通常、人々は特権ポートでアプリケーションを実行しませんが、その代わりに、ポート80または443で 'nginx'(またはその他のWebサーバー)を実行し、それに応じてアプリケーションポートへのプロキシを実行します。 – 599644

+0

'sudo。/ run.byte'だけではないのはなぜですか? – Stargateur

答えて

3

- 私はまだ新鮮な6.0.0のリリースを使用していない - あなたが最初にあなたのeliomアプリケーションをインストールする必要があります。

sudoの

をインストールします

次に、80/tcpポート(たとえば、sudo netstat -tulpn 80 | grep :80)がそのポートをリッスンするプロセスを識別するのに役立つプロセスをkillする必要があります。おそらくはapache2またはlighthttpdです。

次に、あなたがあなたの実行可能ファイルを実行します。

のsudoのPATH = $ PATHにOCAMLPATH = $ OCAMLPATH LD_LIBRARY_PATH = $ LD_LIBRARY_PATH これは、で作成したREADMEに書かれているものであるrun.byte

を作りますエイリアン蒸留所 - しかし、あなたのenv変数を設定する前に気をつけてください:

OCAMLPATH is the location of ocaml used in your env (in my env :~/.opam/4.02.3/bin). 
LD_LIBRARY_PATH : .opam/4.02.3/lib/stublibs (otherwise dllssl_threads_stubs is not found) 
+0

私はそれを試してみましたが、最初に2つの変数を自分自身で設定しなければならないことを知らなかったので、うまくいきませんでした。 Merci Pierre。 –

関連する問題