- PR -

RedhatLinuxのApacheを複数起動するには?

1
投稿者投稿内容
take7
会議室デビュー日: 2006/07/09
投稿数: 3
投稿日時: 2006-07-09 01:48
RedhatLinuxAS/ES/WS4.0に組み込まれているApache2.0.52を複数起動するには、
どのような設定をすればよいのでしょうか?!。
Apacheのバーチャルホスト機能ではなく、Apacheをそれぞれ独立したプロセス
で起動/運用管理したいのですが。。。
未記入
会議室デビュー日: 2006/05/07
投稿数: 18
投稿日時: 2006-07-10 02:25
自分は 1.3系で1台のPCに複数のApache環境を作成したことがありますが

パッケージでは無理でしたのでソースからコンパイルして対応しました。
(configure でのパス指定をそれぞれ変更して)

注意するのは 各Apacheで ユーザー、ポート、ドキュメントルートを変えることです。
例)
ユーザー: apache01
ポート : 81
ドキュメントルート: /var/www01




take7
会議室デビュー日: 2006/07/09
投稿数: 3
投稿日時: 2006-07-10 10:35
RedhatLinuxにバンドルされている(アプリケーションの追加と削除でセットできる)Apacheパッケージで、2つ目のセットアップを検討しています。

>パッケージでは無理でしたのでソースからコンパイルして対応しました。
>(configure でのパス指定をそれぞれ変更して)

パッケージでは無理なんでしょうか。
Copy/編集して起動するPIDが1つ目のapacheと競合してしまうのですね。
なんらかの設定があるもの、とは思っているのですが。

やはりソースからコンパイルして対応する方法になるのでしょうか。
綾瀬
ぬし
会議室デビュー日: 2002/07/31
投稿数: 393
お住まい・勤務地: どっちも3階
投稿日時: 2006-07-10 11:13
こんにちは。
RedHat触ってないので想像で書きますが。

/etc内にある(と思う)apacheのconfigファイルを別名でコピーして
LISTENやDocumentRoot、Log関連など必要な部分を修正

rc.d(init.d?)内の起動スクリプトを別名でコピーして
起動時に読み込むconfigファイルや、pidファイルなどの修正

こんな感じのことをすればとりあえず起動は出来そうな気がします。
あくまで想像なのですべてを信用しないでくださいね。
未記入
会議室デビュー日: 2006/05/07
投稿数: 18
投稿日時: 2006-07-10 12:05
こんにちは。

ソースからコンパイルするしかないと思っていましたが

起動時に使用する設定ファイルが指定できることが分かりました。

どうもすいません。(自分も勉強になりました)

下記のURLを参考にしてください。

http://httpd.apache.org/docs/2.0/ja/invoking.html
take7
会議室デビュー日: 2006/07/09
投稿数: 3
投稿日時: 2006-07-12 11:58
 皆さん、アドバイスをありがとうございます。
Redhat社では、バンドルされているモジュールをCopyやら編集やらして
起動することについては、サポート外でアドバイスいただけないようです。
Apacheをダウンロードし、ソースからMakeして起動する分には、フォルダも全て異なる
場所に指定することから、簡単に起動するのですが。www
可能であれば、バンドルされているモジュール/VerRevで、起動したいのですが。
未だあーだこーだやってる最中ですが、なんとかなる・・?!?!、といった感じです。
anights
ぬし
会議室デビュー日: 2003/05/22
投稿数: 277
お住まい・勤務地: 東京
投稿日時: 2006-07-12 14:34
他の方が返答されているようにhttpd.conf(includeしているなら
/etc/httpd/conf.d配下含む)を内容をバッティングしないように複数作って

# apachectl -f /etc/httpd/conf/httpd1.conf -k start
# apachectl -f /etc/httpd/conf/httpd2.conf -k start
# apachectl -f /etc/httpd/conf/httpd3.conf -k start

なんてやれば出来ちゃいますが起動だけは。。。もしこれでなにか問題があるようなら設定内容が悪いのでは?
ああ、ちなみに終了もapachectlなら別々にやってくれますね。

ただ、標準の起動スクリプトを利用したいならそのまま使うのは難しいでしょうね。
起動時に設定ファイルの指定が必要だし、停止の際も設定ファイル名によるプロセス判別が必要でしょう。

やるとしたらアイデアだけ。
起動時は起動スクリプトを複数用意してスクリプト内で設定ファイル指定するなり
引数で与えるなりするとして、終了時は、pidファイルのプロセスID情報をもとにkillするか、
pkillのようなコマンドを使ってコマンドライン全体を判別対象としてkillするかでしょうか。


_________________
桃李不言 下自成蹊
1

スキルアップ/キャリアアップ(JOB@IT)