• 締切済み

Vine Linux 2.15 ではApache2を動かせないのでしょうか。

古い ノートパソコン(PentiumMMX 233Mhz メモリ64MB)にVine Linux 2.15 をインストールして学習しています。 ---------------------------------------- Vineに付属していたApache1.1は、削除方法が今ひとつ良く分からないのでそのままとし、Apache2(httpd-2.0.53.tar.gz)を解凍しインストールして共存させました。 # /usr/local/apache2/bin/apachectl  start   とすると、 (98)アドレスは既に使用中です:・・・・と出るので、Apache1.1の /etc/httpd/conf/httpd.confファイル中のポート番号を80番から8888番 に変更してrebootしました。そして、Apache2.0を起動してlocalhostにアクセスしましたが、「サーバが見付かりません」とのメッセージが出ます。 # /usr/local/apache2/bin/apachectl  stop   としてみると、 httpd (pid 1029?) not running となり、Apache2が動いていない様子です。 ----------------------------------------- # vi /usr/local/apache2/conf/httpd.conf で開いてみると、Listen80 になっています。しかし、 # netstat -ln | grep 80   とすると、 tcp 0 .00.0.0.0:5680 0.0.0.0:* LISTEN となっており、Port80は見当たりません。 # ps aux | grep http   とすると、FedoraCoreの解説本には、 [・・・・・・/usr/local/apache2/bin/httpd -k start] になると書いてありますが、 root 689 0.0 2.0 3712 1296 ? S 14:33 0 /usr/sbin/http となっています。 ------------------------------------ どこが不具合でApache2が動かないのでしょうか。どのように修正すれば良いでしょうか。 Apache2を起動できないのは、そもそも、パソコンの能力が不足しているからでしょうか? Vine Linux 2.15ではApache2を使えないのでしょうか? 何かお気づきの点があれば教えて頂ければ有難いです。よろしくお願いします。

みんなの回答

回答No.9

xjdさんに、良ければお試しいただきたいのは httpd.confの1行目に #を消して test と記述して apachectl restart してみてください 当然エラーが出て起動できませんが、error_logに何が残ってますか? ひょっとしてSyntax errorは記録されずに 停止したときのshutting downが末尾に残っていませんか? #1でerror_logを と書いておいて何ですが、そもそもlogs/以下のログは 起動したApacheによって書き込みされる物では無いでしょうか? となるとhttpd.confの構文エラーによってApacheが起動しなければ error_logには何も記録されないのではないかと思いますが? で、質問者さんに再度確認しますがerror_logの末尾は間違いなく resuming normal operations となっているのですか? そうだとすると、これは正常に起動した場合に記録される物の筈です。 で、結局のところ問題が違うのでは? apacheが起動しているか確認の方法が違うとか?

spindle
質問者

お礼

エラーログは syntax error near unexpected token '(U': line1:'[Sat Apr15 12:49:29 > 2006][notice]Apache/2/0.53(Unix)configured--resuming normal operations' となっています。しかし、No9さんのご指摘で推察するのですが、Apache2がstratできなった場合はエラーログが残らないのではないでしょうか。4月22,23日に何度もstartのtryをし、不調でしたが、エラーログに残っていません。Apr15のresuming normal operationsは、startできたが「(98)アドレスは既に使用中です」と警告が出たときのものではないでしょうか。 原因不明で未解決のままとなり、スッキリしませんが、ご迷惑をおかけするばかりなので、一旦、締め切らせていただきます。皆様、本当に有り難うございました。また、ご面倒をおかけし、申し訳ございませんでした。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.8

># /usr/local/apache2/bin/apachectl configtestとすると、意外にもSyntax OKと出ました。 httpd.conf のどこを書き換えたのか、一度確認してみましょう。 /usr/local/apache2/conf/ 配下に、httpd-std.conf という雛形がありますので、 diffコマンドで比較すればどこが違うかわかりますので試してみてください。 # cd /usr/local/apache2/conf/ # diff httpd-std.conf httpd.conf 267,268c267,268 < User nobody < Group #-1 --- > User apache > Group apache 277c277 < ServerAdmin you@example.com --- > ServerAdmin root@pc.########.net 291c291 < #ServerName www.example.com:80 --- > ServerName pc.########.net:80 雛形ファイルとの差異が表示されるので、どこが違うかチェックするのに役立ちます。

spindle
質問者

お礼

お手数をかけます。 # cd /usr/local/apache2/conf/ # diff httpd-std.conf httpd.confとすると 973,978c973,978 <# <Location /server-status> <# SetHandler server-status <# Order deny,allow <# Deny from all <# Allow from .example.com <#</Location> --- > <Location /server-status> > SetHandler server-status > Order deny,allow > Deny from all > Allow from .localhost.localdomain > </Location> と出ました。書き換えたのは、この各行#をとったのと.example.comを.localhost.localdomainにしただけです。

spindle
質問者

補足

皆さま、本当にありがとうございました。原因が解りませんが、Vineをインストールし直すか、やはりPCを買って、FedoraCoreを入れるか、再度考えて見ます。 まだ心残りなので、もう少し置いて、明日にでも、一旦、締め切らせて頂きます。何かご助言を頂ければなお幸いです。 本当にいろいろ有り難うございました。

回答No.7

こちら(Vine3.2+apache2.0.55)でいろいろ試して見ましたが、 どうも不思議なのは httpd.confに構文エラーがあって 起動に失敗しているとapacheのerror_logには何も残らず /var/log/messagesに linux apache2: Syntax error on 以下略 が残るんですよね ま、それはともかく、、、 httpd.confの1行目に原因があるとして、fileの中を見ても 判らなければ # od -c -N100 /confのパス/httpd.conf > odtest.txt と打つと通常では表示されないキャラクタも表示されます (\rとか全角スペースとか) で、 odtest.txtを開き 行頭から \n までを 補足に貼り付けていただければ誰かが判るかもです 後は試しに httpd.confの1行目行頭に # を付けてみるとか? #4の訂正 ># grep httpd /var/log/messages > ~/ht_mes.txt # grep apache /var/log/messages > ~/ht_mes.txt とした方がいいかも

spindle
質問者

お礼

たびたび誠に有り難うございます。 # grep apache /var/log/messages > ~/ht_mes.txtはまだ試していませんが、エラーログのコピーを皆さんに見て頂こうと思い、linux機からネット接続を試みたところ、前回できた接続が、今回できなくなっています。(平常は、ルータ経由でwindows機でネット接続しており、linux機は繋いでいません )。netconfigで調べてみると、use dynamic IP configurationに*マークが消えています。(linux機の電源を落とせば消えるものなのでしょうか?)モデム、ルーターと電源を入れ直し、netconfigでuse dynamic IP configurationに*マークを付けようとしますが、OKボタンを押しても確定できません。これが、今回の不調の原因に関係があるのでしょうか? 質問のポイントがずれたようで申し訳ありません。もしこの欄での質問が不都合なら改めて行います。

  • entree
  • ベストアンサー率55% (405/735)
回答No.6

> sintax error near unexpected token '(U': line1:'[Sat Apr15 12:49:29 > 2006][notice]Apache/2/0.53(Unix)configured--resuming normal operations' httpd.conf の 1 行から既におかしいというよな内容ですね。改行コードがちゃんと LF になっているか確認してみてください。 少なくともコンパイルが通ったという時点で、動作しないということはないと思います。

spindle
質問者

お礼

ありがとうございます。 httpd.conf の 1 行目の状況については4番5番の欄でご報告したものと同じです。 # od -a /usr/local/apache2/conf/httpd.confで改行コードを調べましたら、多数の行が表示されましたが止まった行で見ると、 0104100 < / V i r t u a l H 0 s t > nl と出ましたのでLFになっていると思います。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.5

>やはり、Pentium3 512MB 級のPCが必要ということでしょうか? メモリを64MBにしてみましたが、問題なく起動しましたよ。 (性能は別として) >apachectl startとしてerror/logを見ると、 >sintax error near unexpected token '(U': >line1:'[Sat Apr15 12:49:29 2006][notice]Apache/2/0.53(Unix)configured--resuming normal operations' >となっています。Apr15は前回、動かした日付です。 sintax ではなく、syntax ですね。エラーメッセージは自分で打つのではなく、画面をコピペしましょう。 Syntax error 明らかに文法エラーですね。httpd.confに書き間違いがなければ、以下のように 表示されます。 # /usr/local/apache2/bin/apachectl configtest Syntax OK # >line1: httpd.conf の1行目になにかゴミがあるのでしょうか? もう一度よく見直してください。

spindle
質問者

お礼

有り難うございます。apachectl startとした後、 # /usr/local/apache2/bin/apachectl configtestとすると、意外にもSyntax OKと出ました。この状況でエラーログを見ると、昨日と同じエラーログが出ます。 /httpd.confで (U を検索するとPattern not foundと出ます。/httpd.confのコメントアウトされていない1行目は、ServerRoot "/usr/local/apache2" となっています。

回答No.4

# /usr/local/apache2/bin/apachectl configtest と打つとhttpd.confの文法チェックが出来る筈です。 # sh -n /usr/local/apache2/bin/apachectl と打つとapachectl自体の文法チェックが出来ます。  (これが原因って事は無いだろうが) >/var/log/messagesを見ましたが、良く解りませんでした。 いっぱい有り過ぎてどれかわからないって事なら # grep httpd /var/log/messages > ~/ht_mes.txt して /root/ht_mes.txtを読めばいいんですが?

spindle
質問者

お礼

有り難うございます。apachectl start の後、 # /usr/local/apache2/bin/apachectl configtestと打つと、意外にも、Syntax OK と出ました。 # sh -n /usr/local/apache2/bin/apachectl と打つと、 ]# と何も出ません。念のためこの状態でapache2/logs/error_log を見ると昨日と同じエラーログが出ているのです。

  • entree
  • ベストアンサー率55% (405/735)
回答No.3

> # netstat -ln | grep 80   とすると、 > tcp 0 .00.0.0.0:5680 0.0.0.0:* LISTEN > となっており、Port80は見当たりません 1. この状態で /usr/local/apache2/bin/apachectl start としたらどのようになりましたか? 2. /usr/local/apache2/conf/httpd.conf ファイルの内に Listen 80 という記述がちゃんとありますか? ない場合は追加してから 1 の手順に戻ってください。 3. /usr/local/apache2/logs/error_log に何か出力されていませんか? エラーメッセージが表示されている場合は、その内容を修正してから 1 の手順に戻ってください。

spindle
質問者

お礼

レスポンスが遅くなり申し訳ありませんでした。 1. # netstat -ln | grep 80  とすると    tcp 0 .00.0.0.0:5680 0.0.0.0:* LISTEN が再現し、この状態で /usr/local/apache2/bin/apachectl start とすると、PC内部でなにやらうごめく気配がして、 [root・・・]# となります。 2./usr/local/apache2/conf/httpd.conf ファイルの内は、 217行 #Listen12.34.36.78:80 219行 Listen 80 とあります。 3.この状態で /usr/local/apache2/logs/error_log を見ると、1番の方にレスポンスしたのと同じログがあります。 

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.2

Vine Linux 2.1.5に 最新のApache2.0.55を入れてみましたが特に 問題なく起動しました。(PCはPentium3 512MB) # cat /etc/vine-release Vine Linux 2.1.5 (Calon-Segur) パッケージ版のApacheを停止させる # service httpd stop Shutting down http:             [ OK ] OS起動時に、Apache(HTTPD)がランレベル3・5で起動しないように サービス一覧でチェックをはずす # ntsysv --level 35 VineLinux再起動 Apache(HTTPD)が動いていないことを確認 # ps ax # netstat -ta ソース版Apache(2.0.55)のコンパイル・インストール # ./configure # make # make install /usr/local/apache2/conf/httpd.confを一部修正 User nobody Group nobody /usr/local/apache2/bin/apachectl start Apache2の動作確認 # ps ax 796 ?  S  0:00 /usr/local/apache2/bin/httpd -k start # netstat -ta tcp    0   0 *:www    *:*       LISTEN

spindle
質問者

お礼

レスポンスが遅くなり申し訳ありませんでした。 apachectl startとした後、 # ps aux | grep httpd とすると、 root 1060 0.0 0.8 1676 512 tty0 S 13.24 0:00 grep httpd と出ました。 # netstat -ta とすると、 tcp 0 0 *:ftp *:* LISTEN 等は出ますが、*:wwwは見当たりません。 やはり、Pentium3 512MB 級のPCが必要ということでしょうか?

回答No.1

Vine2.1にapache2.0.16をコンパイルして動かした事はあります。2001年の話ですが、、、 error.logには何も記録されていませんか? まず確認してから apachectl  start して見る >もう一度error.logを確認する /var/log/messages も見る 取り合えず、そんなことしか書けません

spindle
質問者

お礼

レスポンスが遅くなり申し訳ありませんでした。 apachectl startとしてerror/logを見ると、 sintax error near unexpected token '(U': line1:'[Sat Apr15 12:49:29 2006][notice]Apache/2/0.53(Unix)configured--resuming normal operations' となっています。Apr15は前回、動かした日付です。 /var/log/messagesを見ましたが、良く解りませんでした。

関連するQ&A