気になる話題

Apache2.4.60にしたらindex.phpがダウンロードされるように!解決方法は?

投稿日:

PHPでシステムを構築しているWEBサーバを更新することになりました。

それに伴い

PHPのバージョンを7.4から8.3に

Apacheも最新にすることになりました。

7月1日まではPHP8.3とApache2.4.59を使用してシステムの修正と動作確認を行っていましたが、7月1日に脆弱性対応版のApache2.4.60が公開されたということでこちらを使用することになりました。

httpd.confの内容も全く変わっておらず、同じ個所を修正すれば、問題なく動くものと思っていました。

目次

システムにアクセスするとindex.phpがダウンロードされる?

テスト環境の設定も終わって、localhostからシステムにアクセスしたところ

ブラウザからindex.phpがダウンロードされるようになっていました。

設定が間違っているのかと思い、httpd.confや.htaccessなどを見なおしましたが、特におかしいところはなさそうです。

phpinfo.phpを作成し起動してみたところ、問題なく表示されました。

ついでにindex.htmlも試してみたところ、当然問題ありませんでした。

index.phpを指定すると起動できる

phpinfo.phpが問題なかったのでURLにindex.phpを指定して起動してみました。

すると問題なくTOPページが表示されます。

ますます原因がわからなくなりました。

とりあえず起動はしたので、他の設定自体は間違っていないようです。

解決方法はAddtype→AddHndler

原因についてですが、httpd.confで設定した。

Apache2.4.59までは、下記の設定で動いていました。

AddType application/x-httpd-php .php

ただApache2.4.60では

AddtypeではなくAddHandlerにしないとindex.phpがダウンロードされてしまうようでした。

ということで

AddType application/x-httpd-php .php

AddHandler application/x-httpd-php .php

に記述を変更。

と思ったんですが、AddtypeとAddHndlerについて調べてみると、

拡張子にphpを含んでいれば(aaa.php.bbbなど)phpとしてマッチされるということで

PHPでは推奨していないみたいです。

で最終的には以下で設定しました。

<FilesMatch \.php$>

SetHandler application/x-httpd-php

</FilesMatch>

この設定でApacheを再始動したところ

正常にシステムが起動できました!

まとめ

今回の件についてですが、httpd.confの記述については、これまで何年も同じ内容で問題なかったので、全く変更したことはありませんでした。

結局問題解決に1日かかってしまいました。

2.4.59から2.4.60というマイナーバージョンの変更でこんなに苦労するとは・・・

PHPについても7.4から8.3に変更で色々修正箇所があり、結構時間がかかりました。

まあとりあえず解決!ということで原因がわかってよかったです。

追記

apache2.4.60のバグでした。

下記のページに記述がありました。

https://httpd.apache.org/security/vulnerabilities_24.html

Apache HTTP Server 2.4.60 のコアの回帰により、ハンドラーの従来のコンテンツ タイプ ベースの構成の一部が無視されます。ファイルが間接的に要求される状況によっては、「AddType」や同様の構成によって、ローカル コンテンツのソース コードが公開されることがあります。たとえば、PHP スクリプトが解釈されるのではなく、提供される場合があります。

まさにソースコードが公開される=index.phpがダウンロードされるということですね。

というわけで2.4.61をインストールしましょう。

-気になる話題

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

no image

本家のワンパンマンが更新!フラッシュとソニックがパワーアップでガロウも再登場?

2020年10月6日、7日と連続で本家のワンパンマンが更新されていました。 現在132話です。 なんか閃光のフラッシュと音速のソニックが「あの御方」の秘伝書でパワーアップしているし、ネオヒーローズもな …

no image

Excelを使用して透過PNG画像を作る方法

通常、透過PNG画像を作成する場合には、有料無料を問わずペイントソフト等を使用すると思います。 ただし、1から複雑な画像を作るのではなく、単に透過させたいだけであればExcelで簡単にできます。 透過 …

no image

PC版のGTA5が無料だったので入れてみた!

PC版のGTA V(Grand Theft Auto V)がEpic Gamesストアで、5月21日まで期間限定で無料で入手できます。 これについては、期間限定内限定で無料プレイできるというわけではな …

no image

煽り(あおり)運転で免許取り消しに!罰則強化のために道路交通法を改正!いつから導入?

去年からニュースが続いている「あおり運転」についてですが、ニュースを見るたびに「こんな奴に運転させてもいいの?」とか「免許取り上げたほうがいいんじゃないの?」とか思っていました。そんな中、罰則強化のた …

no image

2020-21チャンピオンズリーグ決勝トーナメントがWOWOWで独占生中継!放送予定は?

スポーツ動画配信サービスの「DAZN(ダゾーン)」が、2020-21の欧州チャンピオンズリーグ(CL)の日本での放映権を手放したため、「UEFA.tv」を見るしかありませんでした。 と思っていたところ …