suEXECの導入方法メモ

投稿日:2015年08月15日
最終更新日:

CentOSのApacheでsuEXECを使えるようにする手順のメモ書きです。これによって、CGIをユーザー権限で走らせることができます。PHPのCGIモードの場合はsuPHPのほうが楽だと思います。

手順の目次

  • suEXECの設定を確認。
  • suEXECを動かすディレクトリを用意する。
  • バーチャルホストをゴニョゴニョしてユーザー等の設定。
詳細は以下

手順の解説

設定の確認

CentOSで、yumでApacheをインストールしてあれば、suEXECもあると思うので、次のコマンドを打ちます。 こんな感じの結果が表示されると思います。 問題なのは-D AP_DOC_ROOT=”/var/www”です。この設定では、ディレクトリ/var/www以下でないと、suEXECが仕事してくれません(やらせたらもれなくエラーを吐きます)。なので、(/home/ユーザー名/public_htmlで動かしたい場合の)方策としては、
  • Apacheを一旦アンインストール→Apacheを自分でコンパイルしてインストール(この時にsuEXECの動作を指定できる)。
  • 無理やりごまかす。
  • 諦める。
だいたいこのへんになります。Apacheをコンパイルするのは面倒なので、無理やりごまかします。

/home/ユーザー名/public_html以下で無理やりsuEXECに仕事をさせる

種明かしすると、/var/www以下にファイルが有ればとりあえずOKなので、/home/ユーザー名/public_htmlを/var/www以下にマウントしてやります。コマンドは以下(/home/ユーザー名/public_htmlは作成済みであるものとする) とりあえずこれで、suEXECは仕事するようになると思います。

バーチャルホストの設定

バーチャルホスト側の設定を行います。バーチャルホストの設定ファイルを編集しましょう。設定例は以下 多分こんな感じです。足りない部分は各自補ってください(汗)

このブログを応援する・寄付する

当ブログでは暗号通貨による寄付を募っております。

Bitcoin:

Monacoin:

Litecoin: