HTMLファイルに拡張子がないサイトの.htacsess設定
通常、ブログやサイトのHTMLファイルには、*.htmlというように
拡張子がついていることが多いのですが、
A8.netの運営する無料ブログサービス、ファンブログの記事データファイルは、
http://fanblogs.jp/アカウント名/archive/記事番号/0
という、「0」という、拡張子のないファイルになっています。
ヤプログでも、
http://yaplog.jp/アカウント名/archive/記事番号
という、「記事番号」という、拡張子なしのファイルですね。
ブログサービスのサーバ側で、拡張子なしのファイルは、
HTMLファイルとして扱う、という指定をしてあるので、
ちゃんとWebのページとして表示されるんです。
*****
先日、私は、ファンブログ内のブログをディレクトリ構造そのまま
自分のドメインに移設したのですが、そのさいに、記事のページが
Webページで見えず、HTMLソースがそのまま見える状態になってしまいました。
私が借りているさくらレンタルサーバ(ライトプラン)では、
拡張子がないファイルは、テキストファイルとして扱う設定になっているようです。
そこで、.htacsess(ドットエイチティーアクセス)ファイルに、一行、
このソースを追加しました。
DefaultType text/html
拡張子がなかったら、HTMLファイルとして扱ってね、という指示です。
これで、無事、拡張子のない記事ファイルも、Webページとして
見えるようになりました。
私の場合、サイト内に拡張子のない種類のファイルは他にはなかったので
これで事足りたのですが、他のサーバでうまくいくかどうか分からないので、
参考程度にしてくださいませ。
■関連する他のブログ・サイトの記事
◆.htaccess(ドットエイチティーアクセス) IT用語辞典
~ApacheなどのWebサーバで使用できる、Webサーバの動作をディレクトリ単位で
制御するためのファイル。~
◆.htacsessの使用法
~.htaccess を使用すると、サーバーの動きをディレクトリ単位で規定できます。~
コメント
はじめまして。私も拡張子なしでwebページを表示させたいと思っているのですが、いろいろ調べているうちに大まか内容が分かってきました。ですが今一つ完全に理解する事が出来ずに困っています。そこで教えて頂きたいのですが、拡張子なしで表示する前提としてwebページの元となるファイルは、PC側の設定にて拡張子を非表示に設定して拡張子が消えている状態で、FTPにてサーバーにアップロードしなくてはだめなのでしょうか?宜しくお願い致します。
まず、「拡張子がないファイル」というのと、
「拡張子があるけれどPCの設定で非表示にしているファイル」は別ものです。
二番目は見えていないだけで拡張子があるファイルです。
拡張子がないファイルは、拡張子を表示した状態で名前を変更、
ファイル名から拡張子部分を削除して作ります。
たとえば 0.html から .html を消すと 0 という拡張子なしの
ファイルになります。
拡張子がないファイルも、拡張子があるファイルも、FTPでサーバに
アップロードすることができます。
名無しさんが「拡張子のないファイル」をアップしてwebページを表示させたい
場合は、この記事のように .htacsessで表示設定する必要があります。
*****
あるいは、こういうことがご希望でしょうか?
例えば aaa.net/index.html は aaa.net/ でも表示されますよね。
同様に、aaa.net の下に information というフォルダを作り、index.html という
information用のインデックスファイルを作って入れれば、そのファイルは
WEB上では aaa.net/information/ で表示されます。
aaa.net/access/index.html も aaa.net/access/ で表示されます。
aaa.net/access/root1/index.html は aaa.net/access/root1/ と表示されます。
異なる index.html をそれぞれ異なるフォルダに入れておけば、フォルダ名で
インデックスファイルを表示させることができます。
・・・ということがしたいのではないのかな、と思ったのですが、
これで答えになっていますでしょうか?