httpdが起動できない

このQ&Aのポイント
  • httpdのデーモンが起動できない問題について調査中です
  • OSはCentOS4で、Apache2.4.4とPHP5.3.22をインストールしましたが、httpdの状態がstoppedのままです
  • 既存のhttpdのデーモン起動ファイルでは正常に起動できますが、PHPが使えません
回答を見る
  • ベストアンサー

httpdが起動できない。

初心者ですが現在サーバーの設定中です。 OSはCentOS4です。 いじっているマシンはもともとサーバーとしては動いていたのですが、PHPが使えないので、Apache2.4.4とPHP5.3.22をインストールしました。 結果、httpdのデーモンを起動する際、何もエラーが出ず [OK] と表示されるのですが、状態はstoppedのままになっています。 /var/log/httpd/error_logを見ても起動した形跡はありませんでした。 他にも私が見ている範囲ではエラーはありません。 もともとあったhttpdのデーモン起動ファイルも残してあるのですが、そちらでは正常に起動、停止でき、logにも残ります。こちらでデーモンを起動してもPHPは使えません。 何かお気づきの点がありましたらご指導お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • wingstar
  • ベストアンサー率37% (102/275)
回答No.3

老婆心ながら… その先輩とやらから受け継いだサーバは、練習用ですか? そのCentOS4をCentOS5や6にしたらダメなんですか? もう、CentOS4は古過ぎるし、今のCentOS6と比べてもだいぶ時代遅れな感じです。 更に1,2年以内にリリースされるであろうRHEL/CentOS7は、中身がガラリと変わります。 はっきり言ってCentOS4くらいの知識の大半はドブに捨てることになります。 練習・勉強用→Fedoraの最新版 本番・開発用→CentOSの最新版 を使うようにした方が楽だと思いますが。 ちなみに、私はCentOS 5と6であれば、自作のrpmを持ってます… そして、最新のPHP 5.4や5.3のrpmもあり、自宅サーバで元気に動いています。 なので、そのソースrpmを提供することは可能です。 http://wing-net.ddo.jp/wing/5/SRPMS/apr-1.4.6-1.el5_1.wing.src.rpm http://wing-net.ddo.jp/wing/5/SRPMS/apr-util-1.5.1-1.el5_2.wing.src.rpm http://wing-net.ddo.jp/wing/extras/5/SRPMS/httpd-2.4.4-1.el5_8.wing.src.rpm 一応これらはCentOS 5用ですが、あとは中を展開して起動スクリプトもパクってソースビルドするなり、これを元にCentOS4用のrpmを作るなり、お好きに使って下さい。 (src.rpmの扱い方は検索して下さい。)

参考URL:
http://wingse.blog57.fc2.com/
symmetry5
質問者

お礼

回答ありがとうございます。 ソースの提供もわざわざありがとうございます。 OSのVesionが古いのが原因かなとは少し思っていました。 OSのアップデートも検討してみます。

その他の回答 (2)

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.2

>#apachectl=/usr/sbin/apachectl <- コメントアウト >apachectl=/usr/local/apache2/bin/apachectl <- 追加 Apache2.4.4のhttpd.initには上記の設定はなさげ…ですが……。 /etc/sysconfig/httpdの内容はどうなっています? HTTPDやPIDFILEなどが設定されているとそちらが優先になりますけど……。 というか……ディストリビューション標準のrpmパッケージで入れた/etc/init.d/httpdはバックアップしてあるんでしょうか?? >ただし、statusがstoppedから"dead but subsys locked"に変わりました。 lockfileで指定しているファイルが残っているのでしょう。 削除してみたらどうですかね。

symmetry5
質問者

お礼

仰る通り、Apache2.4.4のhttpd.initにはapachectl=...の記述はありませんね。 よく分からないので、とりあえず追加したのでした。 削除したのですが結果は変わりませんでした。 /etc/sysconfig/httpdの中身は全てコメントアウトされていました。 "ディストリビューション標準のrpmパッケージで入れた/etc/init.d/httpd"とは"CentOSをインストールした際に一緒にインストールされたであろうhttpd"のことですか? それでしたらバックアップがあるか分かりません。 このサーバーは先輩から代々受け継いできたものなので。。。 >lockfileで指定しているファイルが残っているのでしょう。 削除してみたらどうですかね。 見てみます。

  • Wr5
  • ベストアンサー率53% (2177/4070)
回答No.1

>もともとサーバーとしては動いていたのですが、PHPが使えないので、Apache2.4.4とPHP5.3.22をインストールしました。 どうやってインストールしました? >結果、httpdのデーモンを起動する際、何もエラーが出ず [OK] と表示されるのですが、状態はstoppedのままになっています。 どうやって起動させていますか? # スクリプトで起動しているのならば、そのスクリプトはどんな内容でしょうか?

symmetry5
質問者

お礼

回答ありがとうございます。 インストール方法ですが、概ね以下のサイトを参考に進めました。 http://centos.i-recording.net/apache_install.html http://centos.i-recording.net/php_install.html apacheを入れる際にAPRがないと言われたのでそれも以下を参考にして入れました。 http://tech.hagitaka.com/index.php?Apache%202.4.x%A5%A4%A5%F3%A5%B9%A5%C8%A1%BC%A5%EB%CA%FD%CB%A1 起動は"/etc/init.d/httpd start"で行います。 httpdは1つ目のリンクにあるように一緒にインストールしたサンプルを #apachectl=/usr/sbin/apachectl <- コメントアウト apachectl=/usr/local/apache2/bin/apachectl <- 追加 #httpd=${HTTPD-/usr/sbin/httpd} <- コメントアウト httpd=${HTTPD-/usr/local/apache2/bin/httpd}<- 追加 #CONFFILE=/etc/httpd/conf/httpd.conf <- コメントアウト CONFFILE=/usr/local/apache2/conf/httpd.conf<- 追加 と編集したものです。 今試したのですが、サンプルではなくてうまくいく元のhttpdスクリプトを上の要領で編集したものでも同様にうまくいきませんでした。 ただし、statusがstoppedから"dead but subsys locked"に変わりました。

関連するQ&A

  • /var/log/httpd/error_logに大量のエラーログ

    お世話になります。 サーバを運用しているんですが、/var/log/httpd/error_logに大量のエラーログが出ます。 環境 CENTOS4 PHP5.1.6 mysql5 apache2.0 /etc/httpd/conf/httpd.confのerror_log部分はコメントアウトして再起動しました。 エラーログをはいているなにがしかのconf設定部分があるとおもい、ずっと探しているのですが、まったくわかりません。エラーログを吐かないようにしたいのですが、どうにか良い方法ございませんでしょうか。 エラーログの中身ですが、すぐいっぱいになるため、中身を見ようと思っても容量が大きすぎてコマンドラインから開くこともままなりません。大体一時間で50G程度のエラーログが出ています。 お忙しいところ大変申し訳ございませんがどうぞよろしくお願いします。

  • httpdのエラーログをwebでリアルタイムでみたい

    php5、fedora4、apache2.0です。 httpdのエラーログ(/var/log/httpd/error_log)をリアルタイムに見たいのですが、何かPHPを使ってよい方法はないでしょうか? 今のところ、あるページにアクセスしたらSystem関数でシェルを実行し、ログをコピーしてきて表示するようにしていますが、上手くいきません。 $last_line = system('sh httpd_error.sh',$return_val); httpd_error.sh ---------------------------------- #!/bin/sh cp -v /var/log/httpd/error_log /var/www/html/log/ ----------------------------------- 「/var/log/httpd/error_log」へのアクセス権がないというエラーが出てしまいます。 PHPのsystem関数でシェルを実行した時って、誰が実行していることになるのでしょうか? また、これ以外にhttpdのエラーをリアルタイムにwebから見れる方法がありましたらご教授ください。 ヨロシクお願いします。

    • ベストアンサー
    • PHP
  • Apache2.2が再起動できない問題についてです

    --- 前提・実現したいこと バーチャルホスト2つ目から3つ目を追加して、Apacheを再起動させたところ[FAILED]と出力されます。 不思議なのが、設定したバーチャルホストを3つから2つに減らしてApacheサーバを再起動したら動きます。 また、構文に誤りがないか確認しましたが「Syntax OK」と出力されました。 ご教授のほどよろしくお願いします。 ------------------------------------------------------------------------------------------------------------------------- --- 発生している問題・エラーメッセージ エラー・ログはございません。 Apache サーバを再起動した際し、[FAILED] ------------------------------------------------------------------------------------------------------------------------- --- vhostで設定した構文です。 NameVirtualHost *:80 <VirtualHost *:80> DocumentRoot /var/www/html/domain-name ServerName domain-name ServerAlias domain-name ErrorLog /var/log/httpd/domain-name/error_log CustomLog /var/log/httpd/domain-name/access_log combined <Directory "/var/www/html/domain-name"> </Directory> </VirtualHost> <VirtualHost *:80> DocumentRoot /var/www/html/domain-name ServerName domain-name ServerAlias domain-name ErrorLog /var/log/httpd/domain-name/error_log CustomLog /var/log/httpd/domain-name/access_log combined <Directory "/var/www/html/domain-name"> </Directory> </VirtualHost> <VirtualHost *:80> DocumentRoot /var/www/html/domain-name ServerName domain-name ServerAlias domain-name ErrorLog /var/log/httpd/domain-name/error_log CustomLog /var/log/httpd/domain-name/access_log combined <Directory "/var/www/html/domain-name"> </Directory> </VirtualHost>

  • Apacheを複数のhttpd.confを用いてる場合の再起動

    Apacheを複数のhttpd.confファイルを用いて運用している場合、 個々のhttpd.confを指定してのApache再起動は可能なのでしょうか? 試しに、httpd_1.confとhttpd_2.confを用いて実施してみましたけど、 エラーになってしまいました。 手順を踏まえての詳細を以下に示します。 1./usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd_1.conf コマンドでApacheを起動。 2./usr/local/apache2/bin/apachectl -f /usr/local/apache2/conf/httpd_2.conf コマンドでApacheを起動。 3.その後Apacheを停止したらプロセスが残ってしまいました。

  • Windows10になってからのhttpd

    Windows10になってからWindowsでのhttpサーバを管理するデーモンhttpdにはどのようなものがあるでしょうか。やはり定番と思われるapacheになるでしょうか。この辺りの事情が変わったかどうかお尋ねしたいと思います。 また、Windows10にもproがあると思いますが、自分のはどうだろうと思いますが。Windowsでもサーバなのか個人デスクトップ用って分かれるものでしょうか。 よろしくお願いします。

  • HTTPDをサービスで起動できません

    CentOS5でApache2.2.3をインストールしましたが、コマンドラインから/etc/init.d/httpd startやservice httpd startとタイプしても起動しません。ところが、bash /etc/init.d/httpd startとタイプすると正常に起動してしまいます。その際、httpd.confは一切変更していません。/etc/init.d/httpd の先頭には「#!/bin/bash」ときちんとシェルのフルパスが書かれています。どこに原因があるのでしょうか。 どうぞよろしくお願いします。

  • CentOS5.2 Apacheの設定について

    Linuxの勉強のため内部向けにWEBサーバを立ち上げようと思いApacheの設定を致しましたが、クライアントからhtmlファイルを閲覧することができません。設定が間違っているなどの情報をいただければ幸いです。大変申し訳ございませんが、お力添えをよろしくお願いいたします。 【ネットワーク環境】 [ルーター]----[サーバー](192.168.1.13)   |    ---------[クライアントPC](192.168.1.12) 【サーバ環境】 OS:CentOS5.2 Apacheバージョン:httpd-2.2.3-22.el5.centos.1 【Apacheの設定】 [httpd.confの設定事項] ServerTokens OS ServerRoot "/etc/httpd" PidFile run/httpd.pid Timeout 120 KeepAlive on MaxKeepAliveRequests 500 KeepAliveTimeout 40 Listen 80 Listen 8080 User apache Group apache ServerAdmin root@localhost UseCanonicalName Off DocumentRoot "/var/www/html" AccessFileName .htaccess ErrorLog logs/error_log CustomLog logs/access_log combined ServerSignature Off AddDefaultCharset Off Alias /error/ "/var/www/error/"

  • Apache(httpd)の自動起動について

    CentOS4でサーバ電源起動時にApacheを自動起動する設定方法についてご教授をお願いできますでしょうか。 オーソドックスなやり方では、chkconfig httpd onというコマンドを使用して、httpdが自動で立ち上がるようにすると思います。 このたび上司から既存のサーバのレプリカを作ってほしいと依頼されたのですが、chkconfig --listコマンドでそのサーバの自動起動の設定を見ると、 httpd 0:off 1:off 2:off 3:off 4:off 5:off 6:off となっているのです。 それでも自動起動しているのはなぜでしょうか?どのような設定をすれば実現可能でしょうか? なお、ps axコマンドでそのサーバのプロセスを見ると、 10928 ? S 0:00 /usr/sbin/httpd -k start となっています。 一方、chkconfig httpd onでhttpdを自動起動した場合のプロセスは、 3873 ? S 0:00 /usr/sbin/httpd となっており、かなり若いプロセス番号であることと、行末に「-k start」がついていないことが異なります。 この「-k start」が一つの手がかりとなると思うのですが、(何かでキックしているのでしょうか?)これは何の意味でしょうか? なお、 /etc/httpd/conf/httpd.conf や /etc/init.d/httpd は両者ともに同じで、ほぼデフォルト状態です。 以上、何卒ご指南くださいますようお願いいたします。

  • httpd.confファイルについて

    教えてください。 CentOSのWebサーバを構築する際に設定情報などを書き込むhttpd.conf ファイルですが、別のCentOSのバージョンもしくはhttpdのバージョンで使用していたhttpd.confファイルを持ってきて起動するととエラーになりますでしょうか? またもしくはconfファイルを編集で開いて上書きしたりしてもエラーになりますでしょうか? どこか一部記述を変えると動くようになるとかいうことはありますでしょうか? よろしくおねがいします。

  • logrotateでログの整理中、httpdの再起動で不具合

    logrotateでログが整理された後、 httpサーバーが再起動されますが、 その後、WEBサイトが見れなくなります。 /etc/init.d/httpd status で見るとrunning ですが、止まっています。 /etc/init.d/httpd restart すると回復します。 /etc/logrotate.d/httpdの中の再起動部分でおかしくなっています。 /var/log/httpd/*log { missingok notifempty sharedscripts postrotate /bin/kill -HUP `cat /var/run/httpd.pid 2>/dev/null` 2> /dev/null || true endscript } /bin/kill のところです。 毎回おかしくなる訳ではなく、たまになると言う頻度、httpd restart で回復します。 どういう対応すれば良いでしょうか。。