Q&A
実現したいこと
Apacheで生成したファイルのパーミッションを変更したい。
前提
現在Webサーバの構築に調整しているのですがPHPのfile_put_contents()やZipArchive()などをつかってファイルの生成、Zip解凍を行ったところ
所有者がApacheとなりパーミッションが0644となってしまったためFTPユーザーで出力ファイルの削除等ができない状況です。
調べたところによるとApacheのumask値を変更すれば良いとのことで色々試してみたものの一向に変化がありません。
どなたか解決方法がわかる方が居られましたらお力をお貸しください。
環境とサーバ状況
下記の通りです。
# cat /etc/redhat-release CentOS Stream release 8 # httpd -v Server version: Apache/2.4.37 (centos) Server built: Jan 31 2023 21:56:20 # systemctl status httpd ● httpd.service - The Apache HTTP Server Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled; vendor preset: disabled) Drop-In: /etc/systemd/system/httpd.service.d └─override.conf /usr/lib/systemd/system/httpd.service.d └─php-fpm.conf Active: active (running) since Sun 2023-03-26 10:26:42 JST; 27min ago Docs: man:httpd.service(8)
試したこと
まずは適当にググった結果
/etc/sysconfig/httpd
に「umask 002」を追記せよと出てきたので試そうと思ったのですが
そもそもファイルが無い状況だったのでさらに調べたところ
CentOS7以降、systemdで管理されているということを知りまして
下記サイトの内容をそのまま試したがApacheの挙動に変化はありませんでした。(その後ファイルを削除)
https://www.dondari.com/Apache%E3%83%A6%E3%83%BC%E3%82%B6%E3%81%AEumask%E5%80%A4%E3%82%92%E5%A4%89%E6%9B%B4%E3%81%99%E3%82%8B-systemd%E7%B7%A8
さらに調べていくと下記のサイトにサービスファイルの場所の確認方法とオーバーライドの方法について記載があったため
https://qiita.com/natsu_san/items/f6618c545a30a29d30a0
参考にしてumask変更を設定(ついでに文字コードも変更)
# systemctl edit httpd [Service] UMask=002 Environment=LANG='ja_JP.UTF-8'
念のため再起動してエラーが無いか確認
# journalctl -eu httpd.service Mar 26 10:13:07 160-251-97-158 systemd[1]: Stopping The Apache HTTP Server... Mar 26 10:13:08 160-251-97-158 systemd[1]: httpd.service: Succeeded. Mar 26 10:13:08 160-251-97-158 systemd[1]: Stopped The Apache HTTP Server. Mar 26 10:13:08 160-251-97-158 systemd[1]: Starting The Apache HTTP Server... Mar 26 10:13:08 160-251-97-158 httpd[2705631]: AH00558: httpd: Could not reliably determine the server's fully qualified domain name, using fe80::1:a0ff:fefb:619e. Set the 'ServerName' directive globally to suppress this message Mar 26 10:13:10 160-251-97-158 systemd[1]: Started The Apache HTTP Server. Mar 26 10:13:10 160-251-97-158 httpd[2705631]: Server configured, listening on: port 443, port 80 Mar 26 10:24:16 160-251-97-158 systemd[1]: Stopping The Apache HTTP Server...
特にsystemdに関するエラーも出ておりませんでした。
ここ3日ほど解決策を探し続けているのですがいくらやっても変わりません。。。
どうかお知恵をお貸しください。
よろしくお願い致します。
回答1件
あなたの回答
tips
プレビュー
下記のような回答は推奨されていません。
このような回答には修正を依頼しましょう。
2023/03/26 08:42
2023/03/26 11:11