60歳からITエンジニアを目指す無謀なブログ

60歳で定年し、職種を変更してIT技術者を目指すブログです。

Apache でphp-fpm実行時のパーミッションで陥った問題

Linuxサーバの立ち上げ初心者です。備忘録として書いています。

 

あるサーバで動作していたプログラムを新しく立ち上げたサーバ環境にポーティングしたところPHPプログラムが動かなくなりました。

 

・新サーバは自分でAlmalinuxを初めてインストールしたところから始めました。

 

/var/www/html にhtmlソースを置いて、動作するところまでは問題ありませんが、

そのあと、いろいろ、directoryを作成してphpソースを置いたりするとすべてPermission denyが原因で動作できません。

 

ファイルや、directoryのパーミッションをchmod 777とかにもしても全く改善せず、

.hataccess の中で allow from all などを試しても改善せず。

途中ChatGPT君に聞いても答えは見つかりませんでした。

ふと、phpがどんなモードで動いているかについて説明しているサイトがあり、

そこで /etc/httpd/conf.d/ directory の存在を知りました。

 

そこでuserdir.conf ファイルの存在を知りChatGPT君に聞いてみました。

/etc/httpd/conf.d/userdir.conf は、Apache Web サーバーのユーザーディレクトリ設定ファイルです。この設定ファイルは、Apache によってユーザーアカウントごとに個別の Web スペースを提供するために使用されます。通常、ユーザーディレクトリは ~user/public_html のような形式で構成されており、ユーザーアカウントごとに個別の Web ページが配置されます。

この設定ファイルによって、ユーザーディレクトリの権限やアクセス制御、およびユーザーディレクトリ内の PHP スクリプトの実行方法などが制御されます。

と回答がありましたので、ドンピシャです。

 

とりあえずここまでを修正してみましたが、

まだ問題 access denyが残っています。

調査継続中です。