httpdの変更が反映されない
とあるサーバーで作業しているときにDocument Root変更したいなと思い/etc/httpd/conf/httpd.conf
を編集してservice httpd restart
をしても全く反映されない現象に出会った。
結論から言うと参照しているhttpd.confが別のものだったからなんだが、そこに行き着くまでを備忘録として記録しておく。
環境
- CentOS7
- php7.14
- apache
apacheがどのhttpdを使用しているか確認
$ ps aux | grep apache apache 23508 0.0 1.7 531692 17620 ? S 00:26 0:00 /usr/sbin/httpd -DFOREGROUND apache 23509 0.0 2.0 429980 20692 ? S 00:26 0:00 /usr/sbin/httpd -DFOREGROUND ...
/usr/sbin/httpd
を使用していることがわかる
httpdの設定確認
# 先程確認したhttpdでコマンドを叩く $ /usr/sbin/httpd -S -D SSL VirtualHost configuration: *:80 is a NameVirtualHost default server 155.129.XXX.XXX (/etc/httpd/conf.d/my.conf:2) port 80 namevhost 155.129.XXX.XXX (/etc/httpd/conf.d/my.conf:2) port 80 namevhost XXXXXXXX.jp (/etc/httpd/conf.d/my.conf:13) ...
/etc/httpd/conf.d/my.conf を使用していることがわかる
httpdの修正
あとはvimなりなんなりで修正して反映させる
# 編集 $ vim /etc/httpd/conf.d/my.conf # 反映 $ service httpd restart
まとめ
解決に時間かかるときって大体しょうもないことが多いよね。
(DOCUMENT_ROOTを知る方法というかhttpd.confの場所を知る方法になってしまったがまあいい。)