ホームページの htaccess PHP について教えてください。

ページの中で PHP を動かしたいのですが、

Redirect permanent /index.html http://www.example.com/index.php

すると index.php は思う通りに動いてくれます。
そこで index.php の拡張子を index.html に変更してから .htaccess を

Redirect permanent /index.html http://www.example.com/index.php  => 削除
AddType application/x-httpd-php .html  => 書き込み
もしくは
AddType application/x-httpd-php .php .html  => 書き込み
もしくは
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*?)\.html$ $1.php  => 書き込み

すると php のコードがテキストで表示されてしまいます。
最初からではなく

channel['title']; $title = mb_convert_encoding($title, "UTF-8",
から
\n"; ?>
までです。

php のコードはコメント欄に載せます。どこを見直せばいいでしょう。
サーバの設定は変更できません。よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:
  • 終了:2009/06/08 14:10:10
※ 有料アンケート・ポイント付き質問機能は2023年2月28日に終了しました。

ベストアンサー

id:kn1967 No.1

回答回数2915ベストアンサー獲得回数301

ポイント60pt

(1)

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*?)\.html$ $1.php

これは html が無ければ php に飛ばすという方法ですから

index.php のままにしておかなければ

index.html をHTMLとして垂れ流してしまいます。


指定方法としては違うのですが動作結果としては

Redirect permanent /index.html http://www.example.com/index.php

と同様だと言えば判りやすいでしょうか?


(2)

頭からの一部が表示されないのはphpコードが入っていてブラウザがうまく認識できないためです。

ブラウザでソースコードを表示すればすべて表示されますので確認してみてください。


(3)

AddType application/x-httpd-php .html
AddType application/x-httpd-php .php .html

これらについては、もしかしたら

AddHandler x-httpd-php .php .html

が使えるかもしれませんが、

(a)htaccessでの利用が許可されているかをサーバ管理者に確認を取る

(b)レンタルサーバであれば、サーバ会社のサポートページにて探す

(c)レンタルサーバであれば、サーバ会社と契約コースを明示して引き続き回答を期待する

のいずれかが必要かもしれません。

id:breakthrough1

kn1967 さん ありがとうございます。

AddHandler x-httpd-php .php .html

試しましたが、無理でした。

管理者に聞いてみます。

2009/06/08 14:08:58
  • id:breakthrough1
    php のコードは

    <?php
    require_once 'rssphp/rss_fetch.inc';
    define('MAGPIE_OUTPUT_ENCODING', 'UTF-8');
    $url = 'http://www.example.com/blog/?feed=rss2';
    $url1 = 'http://www.example.com/blog/';
    $sfont = 'class="OptItm"';
    $rss = fetch_rss($url);
    $title = $rss->channel['title'];
    $title = mb_convert_encoding($title, "UTF-8", "auto");
    echo "<h2 $sfont>■<a href=\"$url1\">*更新情報*</a></h2>\n";
    echo "<ul>\n";
    foreach ($rss->items as $item ) {
    $title = $item[title];
    $title = mb_convert_encoding($title, "UTF-8", "auto");
    $url = $item[link];
    echo "<p><a href=\"$url\">$title</a></p>\n";
    }
    echo "</ul>\n";
    ?>

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

回答リクエストを送信したユーザーはいません