2008年12月より、ロリポップサーバーでPHP5が使用できるようになりました。
しかし、php4からphp5に変更することで弊害も...
サイトをphp化して、url includeを使用している方は注意が必要。
php4からphp5にアップグレードすると、includeが出来なくなります。
と言うよりエラーになります。
問題はロリポップサーバーのphp5の設定で
allow_url_include = Onの設定ができないことが原因。
ロリポップに問い合わせた所、allow_url_includeをonにさせる予定は無いそうだ。
なので、
<?php include("http://example.com/example.php"); ?>
等のインクルードコマンドでurlをインクルードした記述をしていたら、
Warning: include() [function.include]: URL file-access is disabled in the server configuration
とエラーが返って来てしまいます。
(このサーバーはURLでのファイルアクセスは許可していませんよ!と言うエラー)
これをインクルードできるようにするには下記のように記す必要があります。
<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://example.com/example.php");
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
?>
http://example.com/example.php の部分をご自分の環境に合わせて書き換えてください。
ページのHTML宣言文
<?xml version="1.0" encoding="utf-8"?>
の記述を下記のように変更します。
(utf-8の部分は、貴方のサイトのキャラセットに置き換えてください)
<?php echo '<?xml version="1.0" encoding="utf-8"?>' . "\n"; ?>
各htmlページのヘッダーにある宣言部分を下記のように記します。
(例はutf-8の場合です。環境に合わせて赤文字部分を書き換えてください)
<?php echo '<?xml version="1.0" encoding="utf-8"?>' . "\n"; ?>
.htaccessに下記コードを入れて、ブログ(サイト)のトップディレクトリに転送します。
AddType application/x-httpd-php .html
これだけで問題なく動くはずです。
phpでのurlを使用したインクルードなども、一般的に使用されている下記のようなincludeの書式で大丈夫です
<?php include("http://example.com/example.php"); ?>
