ServersManでコントロールパネルもろもろをapacheユーザで動かす

ServersMan@VPSの標準設定では、httpdのユーザーとグループが daemon になっています。
しかし、httpdに関するファイルで一部、ユーザーとグループが apache となっているものがあり、正常に動作しない場面がありました。
どんな場面だったのかよく覚えていないのですが……。

それで、/etc/httpd/conf/httpd.conf の231行目辺りのUserとGroupをapacheに変更していたのですが、そうするとServersManのコントロールパネル(http://xxx.xxx.xxx.xxx/serversman)が正常に動作しないという問題が起こります。
それで、そのコンパネに関するファイルのパーミッションを変えていったのですが、忘れない内にここにメモっておこうと思ったのです。

ちなみにOSはCentOSです。


まず、コンパネの場所です。
/var/www/html/ 以下にCGIファイルなんてありません。これは、mod_rewriteで書き換えてるからです。

$ cat /etc/httpd/conf.d/sm.conf
RewriteEngine On
RewriteRule ^/serversman(.*)$ /cgi-bin/smadmin/smadmin.cgi$1 [PT,L]

これを見ると、CGIが次の場所にあることが分かります。

/var/www/cgi-bin/smadmin/smadmin.cgi

そして、このファイルの中身を見てみると、以下にあるファイルを扱っていることが分かります。

/var/www/data/smadmin
/opt/serversman/
/var/serversman/

/tmp/も使っているのですが、見てみたら中身は空だったので、本当に一時的に使っているだけのようです。

ということがわかったので、これらのユーザーを変更します。

# chown -R apache:apache /var/www/data/smadmin/
# chown -R apache:apache /opt/serversman/
# chown -R apache:apache /var/serversman/

これでコントロールパネルや、もろもろが動くようになるはずです。

■ 追記

新しい方法が用意されていたようなので、こちらを参照して下さい。

コメントを残す