技術情報HOME技術情報ブログPHPコンテンツからファイルを出力してもapacheユーザ以外を指定する方法PHPコンテンツからファイルを出力してもapacheユーザ以外を指定する方法どうも、ディーネットの山田です。8月は、夏休みってことで投稿してませんでしたw(単に忙しくて時間を割けませんでした。)概要Apache上で稼動しているPHPからファイルを出力するとapacheユーザになってしまい、FTPユーザからではファイルの操作ができない課題に対処するべくmod_ruid2というApacheのモジュールを組み込んでみます。※FTPユーザとapacheが動作しているユーザは違うため、どうしてもFTPから触れないだとかPHPから触れない問題が発生します。簡単に解決しようとするならば、単にPHPの実行をApacheのモジュールではなくCGIとして実行すればいいだけなのだがmod_phpのよさ(.htaccessでPHPのパラメータを制御できること)を生かしたり、CGIでの動作は構築が面倒ということもあり比較的簡単に実装する方法となります。</IfModule></Directory>"/var/www/vhosts/localhost/WWW/on/"配下ではmod_ruid2を有効にする"RMode"と"RUidGid"というパラメータ値がありますが、"RMode"は"config"のままにして下さい。"RUidGid"に関しては、実際のFTPユーザなどに置き換えて下さい。"create.php"という名前で設置する。}動作確認ブラウザから確認http://{検証機のIP}/off/create.php実行ユーザは、apache実行グループは、apacheファイルの書き込みが出来ましたと表示されました。http://{検証機のIP}/on/create.php実行ユーザは、ftpuser実行グループは、ftpuserファイルの書き込みが出来ましたと表示されました。想定通り、"/on/"配下はftpuserで動作していることが確認できましたね。/var/www/vhosts/localhost/WWW/on/temp/output.txtこちらも想定通り、"/on/"配下はftpuserで動作していることが確認できましたね。使い道WordPressの管理画面から更新したファイルであっても、FTPユーザから触りたい。FTPユーザで設置したファイルをPHPのプログラムから編集したい。このような煩わしさを感じている方が居れば、ぜひ導入を検討してみてはいかがでしょうか。標準で用意されているPHPのセッションフォルダは、apacheユーザでなければ保存出来ないようになっているので、所有者変更やパーミッションの調整が必要になってきます。BalancerのLoadBalancerNameの説明がよく分からない。その1)Gitのクライアント側で、リモートのmaster,developヘのpushを阻止する。■お手軽な冗長構成の構築NRPEを利用した踏み台サーバ経由の監視Windows7環境にLinuxコマンド環境を作ってみた。#2EC2サーバのトラフィックをレスポンシブに見る方法NginxのチューニングとFastCGIcacheの設定Ghostを利用してみた。WrodPressを動かそうGHOSTをインストールしてみた。FAX:06-6231-8897認証範囲はこちらをご覧ください。