PHPでvirtualが使えなくなった

PHPでvirtualが使えなくなったので、その対応。

PHPのvirtualは、PHPがapacheモジュールとしてインストールされた場合のみサポートされるらしく、coreserverのメンテナンスで使えなくなった。

方法として、一般に、
echo file_get_contents
が知られているようなのだけれど、どうも、http://から絶対URLで呼ばないと無理らしく、
virtual ('yomitai.cgi');

echo file_get_contents ('http://' . $_SERVER['SERVER_NAME'] . preg_replace('![^/]*$!', '', $_SERVER['REQUEST_URI']) . 'yomitai.cgi');
に書き換えることになった。

それでも、環境変数を受け継がないなど、いくつか面倒なことがあって、CGIそのものの方も書き換える必要があった。

以上、備忘録。

ちなみに、
preg_replace('![^/]*$!', 〜〜
はもちろん、
preg_replace('/[^\/]*$/', 〜〜
でOK。
ただし、文字コードがshift JISの場合、エディターの設定によっては、バックスラッシュの入力でミスることがあるので、上の方が無難。

このブログ記事について

このページは、shigetaが2014年6月28日 12:29に書いたブログ記事です。

ひとつ前のブログ記事は「PLANEX無線LANルーター・コンバーターMZK-WG300DX」です。

次のブログ記事は「臨時記号付き装飾記号」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。