インストールと起動


戻る

インストール

esehttpdは現在のところ、GNU/Linuxでしか動作確認していません。一部のソースがGNU libc独自の関数を必要とするため、他のUnixシステムではコンパイルできない可能性があります。またesehttpdをコンパイル・実行するにはOpenSSLが必要ですので、インストールする前にOpenSSLをあらかじめインストールしておいて下さい。またRubyのshared libraryがインストールされた環境でビルドするとcgirubyモジュールが組み込まれますので、必要ならばRubyを--enable-sharedでビルドし、インストールしてからesehttpdをビルドしてください。
esehttpdをインストールするには、バイナリRPMパッケージが使える場合はそれを使い、使えない場合はソースからコンパイルしてください。RPMパッケージからインストールした場合には/usr/以下にインストールされ、ソースからコンパイルした場合には/usr/local/以下にインストールされます。

Esehttpdのソースからのコンパイル・インストール

Esehttpdのtar.gzファイルを展開したら、できたディレクトリにcdして
  $ ./configure
  $ make
と実行します。ソースがコンパイルできたら、
  # make install
と実行すると、/usr/local/以下にインストールされます。インストール完了後は、
  # /usr/local/sbin/esectl start
  # /usr/local/sbin/esectl stop
でそれぞれesehttpdを起動・停止できます。起動後は/usr/local/lib/esehttpd/log/error_logにエラー等のログが残ります。

RPMパッケージによるインストール

RPMバイナリパッケージが利用できるシステムでは、esehttpdのRPMパッケージをインストールするだけでesehttpdが利用できます。
  # rpm -Uvh esehttpd-????.i586.rpm
のようにしてインストールしてください。この場合esehttpd関連のファイルは主に/usr/以下にインストールされます。起動と停止はそれぞれ、
  # /etc/rc.d/init.d/esehttpd start
  # /etc/rc.d/init.d/esehttpd stop
で行います。エラー等のログは/usr/lib/esehttpd/log/error_logに残ります。

RPMパッケージをソースから作ってインストール

RPMバイナリパッケージは無い場合でも、RPMが使えるシステムならesehttpdのソースコードからRPMバイナリパッケージを作り、それをインストールすることができます。
  # rpm -ta esehttpd-????.tar.gz
とすればしばらくしてRPMバイナリパッケージが出来上がりますので、それを先の「RPMパッケージによるインストール」の手順でインストールしてください。

起動

インストール直後の設定ではポート80でesehttpdが起動するようになっています。他のプログラムがポート80にバインドされていないことを確かめてから、先述の方法でesehttpdを起動してください。esehttpd起動後、Webブラウザからhttp://localhost/を開くとテストページが表示されます。

esehttpdのコマンド行引数

先述のesectlと/etc/rc.d/init.d/esehttpdはいずれもesehttpd起動のためのスクリプトで、esehttpdデーモン自体は
  /usr/local/sbin/esehttpd
  /usr/sbin/esehttpd
のいずれか(インストール方法によって場所が異なる)にあります。このデーモン本体を引数無しで直接実行することによってもesehttpdを起動することができます。さらにこの実行形式には次のような引数を渡すことができます。
-n
forkせずにフォアグラウンドで実行します。このオプションが付いてない時は起動後すぐにforkしてバックグラウンドで実行します。
-s
エラーログをファイルではなく標準エラー出力に出します。また、このオプションを付けると暗黙のうちに-nオプションも付けたことになります。
-d
デバグモードで実行します。コンパイル時に-DDEBUGを付けてコンパイルした場合には、このオプションを付けることによって大量のデバグ用メッセージが出ます。ただし通常の方法でコンパイルした場合は-DDEBUGは付けずにコンパイルされるため、このオプションはほとんど役にたちません。このオプションを付けると暗黙のうちに-sオプションも付けたことになります。
-l FILENAME
エラーログの出力先をFILENAMEにします。これを指定しない場合のエラーログの出力先は、
  /usr/local/lib/esehttpd/log/error_log
  /usr/lib/esehttpd/log/error_log
のいずれかになります。
-f FILENAME
設定ファイルをFILENAMEから読み込みます。これを指定しない場合の設定ファイルの場所は、
  /usr/local/lib/esehttpd/conf/esehttpd.conf
  /usr/lib/esehttpd/conf/esehttpd.conf
のいずれかになります。
-p
realtime signalsを使わずに常にpollを使うようになります。これを付けると、realtime signalsが使える環境でビルドしたesehttpdを、realtime signalsが使えない環境で実行することができます。これを付けずに異なる環境でビルドした実行形式を無理矢理実行すると、一見動作しているようでも接続がハングアップしたりすることがあります。

戻る
Akira Higuchi