人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

エラーでApacheが立ち上がりません
httpdを起動後、apachectlをうつと
# /usr/sbin/apachectl start
(13)Permission denied: Error retrieving pid file run/httpd.pid
となります

ls -l で
-rw-r--r-- 1 root root 6 9月 7 16:33 /var/run/httpd.pid
特に問題ないように見えます

どの箇所を確認すれば良いか教えてください

●質問者: technote7
●カテゴリ:ウェブ制作
✍キーワード:9月 Apache httpd LS N/A
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● withgod
●100ポイント

apacheの実行権限はどうなってるんでしょう?

httpd.conf中に次のような感じで書いてるはずです。

User www-data

Group www-data

そのエラーメッセージから推測するに、apacheの実行権限はrootでないのにhttpd.pidに書き込もうとしてエラーを出してると思います。


ところで次のようになっていますが

エラーでApacheが立ち上がりません

httpdを起動後、apachectlをうつと

既に立ち上げた状態で更に起動しようとしてるのでしょうか?

#普通は、httpd=apacheです、起動はinit.d以下のスクリプトですると思います。

#直接apachectlを使う事って、tarからインストールとかしなければ最近では殆ど無い気がしますし、その場合は大抵 /usr/local以下だと・・・

再起動をしようというなら、restartだと思いますし・・・。

既に立ち上げてるのにも関わらず、起動しようとしてこけてるかもしれませんし。

◎質問者からの返答

apacheは

User apache

Group apache

となっています。

httpdを一度落としてapachectl startさせたところ下記のエラーとなりました

(13)許可がありません: httpd: could not open error log file /etc/httpd/logs/error_log.

Unable to open logs

となり

権限を調べると

ls -l /etc/httpd/logs/error_log

となっています


2 ● withgod
●100ポイント ベストアンサー

恐らく、一度そのユーザ・グループ設定が無い状態(コメントアウトとか)で起動したのでしょう。

そこで実行者(root)の権限で、pidファイルやlogが生成されたんだと思います。

pidファイルは停止した事により削除されたと思いますので(もし残ってたら、削除しちゃって下さい)、logの権限の変更か削除してから再度起動すれば良いと思います。

削除はrmですぐ出来るでしょうが、一応念のため所有権の変更は書いておきますね。

chown apache:apache /etc/httpd/logs/*

もし、/etc/httpd/logs の権限がrootになってたりapache権限の書き込みが無い場合は、書き込み権限を付けるか、所有権を変更しましょう。

#上記は全てちゃんとユーザapache,グループapacheがある上での話です。


後更に、logrotateにapacheのログをローテートさせてる場合には、そちらの方も設定を忘れないように。

#logだけならその仕業な気もしますが、pidがrootで出来てるってことは冒頭の理由でしょう・・・

◎質問者からの返答

細かくご指摘ありがとうございます。

ユーザー・グループ設定が無い状態での起動は確かにしたかもしれません

以前/etc配下の所有者を全てrootにしてしまったので。。

ご指摘の箇所

・/etc/httpd/logs/*のapacheへ所有権・グループの変更

は行いましたがエラーは変わらず出てしまいました

書き込み権限は全て644です

#apacheのユーザとグループはちゃんとあります

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ