- ベストアンサー
ロリポップの.htaccess設定方法について
- ロリポップでの.htaccess設定について教えてください。
- .htmlでPHPを利用し、.shtmlではPHPを使用しない設定方法を教えてください。
- .shtmlがエラーにならない.htaccessの記述方法を教えてください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
>shtmlとしては動いたのですがインクルード文がダメみたいです。 試してみましたが私のほうでも駄目でした。 そこで.htaccessに以下を追記。 AddHandler server-parsed .shtml そうすると、読み込みは出来ましたが、文字化けしました。 SSIの読み込みで <!--#include file="include.html" --> <!--#exec cgi="include.html" --> <!--#exec cgi="include.php" --> の全てで文字化けしました。 あまりサーバーに詳しくないので、 この辺はわからないです(^^; 手っ取り早いのは、変更されていない拡張子で includeすれば良いのではないでしょうか。 // .htaccess AddHandler php5.2-script .html .php // SSI <!--#include file="include.htm" --> .htmは指定されていないでしょうから、 正常に読み込めるはずです。 // 余談 .htmlと.shtmlと.php などいろいろな問題から混在しているのだと思いますが、 経験上、管理の観点(長い目で見ると)からはまとめるのが 好ましいと思います。 最近のクローラーは優秀なので、ちゃんと301で 転送してあげればちゃんと反映してくれますよ。
その他の回答 (2)
- mikemike7
- ベストアンサー率87% (97/111)
No1です。 ロリポップにテストできるサーバーがあるので 試してみましたが、正常に動きました。 // .htaccess AddHandler php5.2-script .html // test.shtml <!--#echo var="LAST_MODIFIED"--> // test.html <?php echo date('Y-m-d H:i:s'); ?> SSIの表記ミスってことなのかなあ。 まずは簡単なSSIにして稼動を確かめてから、 実際のSSIコマンドで試されてはどうでしょう。 そうすることで.htaccessの問題はひとまず解決するかと^^
お礼
またまた、ありがとうございます! 教えていただいた方法で記述するとちょっと進みました! shtmlとしては動いたのですがインクルード文がダメみたいです。 動いた.shtmlページに他ページでも記述している 下記を入れると // test.shtml <!--#include file="test.html" --> // test.html SHTMLのインクルードテスト 成功 IEではこのページは表示できません Chromeではエラー 330 (net::ERR_CONTENT_DECODING_FAILED): 不明なエラーです。 と出てきました。 .htaccessで AddHandler php5.2-script .html をトルツメすると正常に動いているので記述間違いは無いと思います。。 う~何が原因なのやら、 また、お気づきの点がございましたらご指摘をお願いします。
- mikemike7
- ベストアンサー率87% (97/111)
.htmlをPHPに。 .shtmlをSSIにするなら AddHandler server-parsed .shtml AddHandler php5.2-script .html で動きませんか?
お礼
ご連絡ありがとうございます。 さっそく、試してのたのですが、やはり.shtmlページにアクセスをするとエラーが出てしまうようです。。
お礼
いつもありがとうございます! また、進みました! > AddHandler server-parsed .shtml の追記ですが、追記しても私の環境ではなぜかエラーのままでした。。 ですが、 // SSI <!--#include file="include.htm" --> 仰る通り、htmやincなど指定していない拡張子ではインクルード文が使えましたので、 おそらくshtmlからphpと定義されているファイルを読み込むとエラーになるような気がしました。 ですので、順次htmやincへ変更していこうと思います。 そして、文字化けの件ですが、おそらくインクルードする側とされる側の文字コードが違うため起こると思われます。 読み込む側に <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> など、文字コードを指定してあげると解消されました。 // 余談 最近ロリポップに移動したばかりなのですが、 やっとphpが使える環境になりましたので、phpで統一を図ろうと試行錯誤中での出来事でした! また、301リダイレクトのアドヴァイスもありがとうございました。 困ったことがあったらまた質問させていただきたいと思いますので、 その時見かけましたらよろしくお願い致します。