■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が残っています。
調査継続中です。