この前、Apache webserverのバージョンアップを行ったのですがいつもより大変でした…
APR及びAPR-Utilの更新は大したことなかったのですが、このバージョンからOpenSSL 1.1.0に対応し、今まで使ってたLibreSSLとの相性が悪くなったのか、うまくmakeができなくて、まずそこで1時間くらい…最終的にOpenSSLを入れることにしました。本当は脆弱性の観点からあまり使いたくないですが…さらにOpenSSLを切替えたせいなのか、分からないがPHPの動作もおかしくなって、大変でした…
PHPの動作がおかしくなったというのは$_SERVER[‘PHP_SELF’]と$_SERVER[‘REQUEST_URI’]の環境変数が通常と異なる?ものを出していたようで、Wordpressの編集画面が表示されなくなるなどのトラブルがありましたが、一応、こんなプログラムを作って、回避させましたw
phpself.php
<?php
$_SERVER['SCRIPT_NAME'] = str_replace($_SERVER['DOCUMENT_ROOT'] , "", $_SERVER['SCRIPT_FILENAME']);
$_SERVER['PHP_SELF'] = str_replace($_SERVER['DOCUMENT_ROOT'] , "", $_SERVER['SCRIPT_FILENAME']); ?>
これを適当な場所に保存する。
php.ini
; Automatically add files before PHP document.
; http://php.net/auto-prepend-file
auto_prepend_file =
auto_prepend_file
を次のようにする
; Automatically add files before PHP document.
; http://php.net/auto-prepend-file
auto_prepend_file = /設置したディレクトリ/phpself.php
こうすることで正しい値を取得してくれるはずだ。今回の場合これでなんとかできました。
その後、無事バージョンアップに成功しました。今回のバージョンアップにより、brotliによる圧縮が利用できるようになり、TLS+HTTP/2及びbrotliによって、表示速度の高速化が期待されると思われます。
最後に写真を1枚…
この前、祇園行ってきたときに撮ったものですwヨウくんかわいい!