• ベストアンサー

複数のindexと優先度について

いつもお世話になっております。 カテゴリ違いでしたら是非誘導をお願い致します。 今xhtmlについて調べていてふと思ったことなのですが、 IEなど、application/xhtml+xmlに対応していないブラウザでは そのページを開こうとすると、ファイルのダウンロードに なってしまうわけですよね。 例えばそこで、index.xhtmlと別にindex.htmlも用意して、 noscriptの如く、xhtml非対応のブラウザでだけindex.htmlを 開かせる、のような動作をさせることって可能なのでしょうか。 もしこの件に関係する情報をお持ちの方がいらっしゃいましたら、 ご教授頂けると嬉しく思います。 (何のためにそんなことしたいのかという疑問は脇に置いておいて下さいね´v`;)

  • HTML
  • 回答数3
  • ありがとう数3

質問者が選んだベストアンサー

  • ベストアンサー
  • MOMON12345
  • ベストアンサー率32% (1125/3490)
回答No.1

ファイルダウンロードになるのはhttpサーバの設定の問題ですよね。 ブラウザごとに処理を分けるなら、.htaccessや或いはindex.htmlにPHPで判断させるなどが必要だと思います。

reverie013
質問者

お礼

早速のご回答、誠にありがとうございます。 サーバの設定の問題なのですか~。 これまでサーバ関係ノータッチで生きてきたもので何から何まで勉強です。(←理解できませんでしたの意味orz) .htaccessもしょっちゅう名前を見かけて便利そうだな~とは思っていたのですが。 ふむふむ。今度こそちゃんと調べてみようかな。 後はPHPですか。 了解です! 早速お勉強してきます! あ、他にも情報ございましたらぜひ宜しくお願い致します。>皆様

reverie013
質問者

補足

お知らせ頂いた情報から検索したところ、 IEでだけHTTPヘッダのcontent-typeを書き換える、 という方法を紹介されているサイト様に遭遇いたしました。 http://www.usamimi.info/~pochi/linux/xhtml11_on_apache22.html http://gertrud.jp/blog/archives/000200.html 一応情報として張っておきます。 これは.htaccessのようですね。 また、このリンク先の情報から、 コンテントネゴシエーションというものも調べてみようと思います。 引き続き、indexの優先度について他にございましたら 情報をお待ちしております。

その他の回答 (2)

  • think49
  • ベストアンサー率59% (285/482)
回答No.3

> xhtml非対応のブラウザでだけindex.htmlを開かせる、のような動作をさせることって可能なのでしょうか。 htaccessは既出のようですので、あとはJavaScriptでUA判定でしょうか。 JavaScript によるユーザエージェント判別 http://homepage2.nifty.com/magicant/sjavascript/uai-spec.html

reverie013
質問者

お礼

ご回答、誠にありがとうございます。 どうやら.htaccessで行なうのが一般的なようですね。 その他の方法として、CGI(Perl、PHP)かJSでもできますよ、 といったところなのでしょうか。 今まだ処理の流れがつかめていないので、ちょっと漠然とした感覚ですが。 調べている中でmeta http-equivの問題にもぶち当たってしまった (HTTPヘッダに直接書く、というのの実際が具体的にどういうことなのかがわからず;) のですが、その中でもやはり.htaccessの名前を見かけました。 これはもう導入しない訳には参りませんね! ……でとりあえずさわりだけ見てみたが……??? どこか良さそうなサイトを探してこつこつお勉強していこうと思います。 皆様、回答下さり本当にありがとうございました。 大体出尽くした(?)ようなので、もう少しだけ待って明日には締め切りたいと思います。 ご助力感謝いたします。^^ またお勉強した後でわからないことが出てきたら改めて質問させて頂こうと思います。

noname#100277
noname#100277
回答No.2

<meta http-equiv="Content-Type" content="application/xhtml+xml; charset=~" /> の一行を記述した拡張子htmlを別途用意するしか無いでしょう。 拡張子xhtmlではIE7でも保存のダイアログが出ます。 完全に「ブラウザ依存」の挙動ですからね。 IE8では改善されたとの話ですが未確認。 一番確実なのは上記。 .htaccessやCGIが設置出来ないサーバーを考慮すると上記が最善。

reverie013
質問者

お礼

回答誠にありがとうございます。 私がお伺いしたいのは、その2通り用意したindexファイルを、 ブラウザによって切り替える方法ですので、 その辺りの情報をお持ちでしたらご教授頂けると 大変嬉しく思います。 (書き換える方法だと、例えばxhtml1.1であった場合、 不正なページになってしまうようですし、 尚更当初の興味であるindexの優先度について気になっております) ※ちなみに、もう一つのファイルはhtml4.01、text/htmlを想定しています。(内容もxhtmlとは≠又は≒) また、今回はページを設置するサーバの対応、非対応に関しては 考慮に入れて頂かなくて構いません。 以上宜しくお願い致します。 他に何かありましたら宜しくお願い致します。^^

関連するQ&A

  • iモード対応XHTML1.1ページが表示されない

    http://okwave.jp/qa1985635.html こちらの方と同様に、iモード対応XHTML1.1でページを作成し、 「index.xhtml」のファイル名で、WEBサーバーにアップしました。 「AddType application/xhtml+xml .xhtml」と記述した .htaccessもアップしました。 「http://○○○.com/index.xhtml」として開くとちゃんと表示されるのですが、 しかし、「http://○○○.com/」だけだとエラーとなります。 「index.html」とすれば「http://○○○.com/」でも表示されるのですが、 CSSがまったく反映されません。 「index.xhtml」を付けず、「http://○○○.com/」のような形で、 iモード対応XHTML1.1ページを表示させるにはどうしたらよいでしょうか?

  • XHTMLでホームページを作る意味はなんですか?

    拡張子がhtmlでソースだけXHTMLで書かれたホームページを見かけることがありますが、あれにはどんな意味が含まれているのですか? ブラウザってContent-Typeがapplication/xhtml+xmlでないとXHTMLとして読んでいないと読んだことがあります。 そうそると、拡張子がhtmlでソースだけXHTMLにしてしまうとブラウザから見ると余分なことを書いてあるDOCTYPE宣言の間違ったHTMLになってしまわないのですか? それともブラウザからしたらそれらしいものならなんでも良いのでしょうか?

    • ベストアンサー
    • HTML
  • .htaccessで、DOCOMOでのxhtml使用を可能(AddType application/xhtml+xml .html)にするとバグが・・・

    DirectoryIndex index.html index.shtml index.cgi index.php Options -Indexes Options ExecCGI Includes ErrorDocument 404 http://www.○○○○○.com/ AddType application/xhtml+xml .html 現在、通常のページがあり、モバイルサイトを構築中なのですが、DOCOMO端末でのxhtml使用ができず、.htaccessでAddType application/xhtml+xml .htmlの記述を入れてアップすると、PCサイトで閲覧するとIEでの表記でリンクのバグ(絶対パスではバグはでないが、相対パスだとダウンロードしますか?のような表記です)が出ます。 このような状況の回避方法など、もしご存知であれば、知恵をすこしお貸し下さい。宜しくお願い致します。 m_m

    • ベストアンサー
    • HTML
  • XHTMLで書いて、XML宣言を書くとバグるブラウザはIEだけ?

    IEで、XHTMLを書いたとして、「XML宣言あり」だと、標準モードでなく互換モードで表示しようとして、ページがみられないというバグがあると思います。 参考 http://cssbug.at.infoseek.co.jp/detail/winie.html XHTML(XML宣言あり): 互換モード(この動作はバグです) で、他のブラウザで、XHTMLで書いて、XML宣言を書くと同様にバグるブラウザは存在するのでしょうか? なお、ケータイのUA、あるいはもっと言えば海外のUAも考慮に入れています・・・が、わかる範囲でおこたえいただければ幸いです。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • phpのダウンロード画面が出てしまう

    IE6からphpにアクセスするとダウンロード画面が出てきてしまいます。 ダウンロード画面を出さないようにするにはどうすればいいでしょうか。httpd.confは編集できない環境です。 .htaccessは下記のどちらにしてもDL画面が出てきます。 AddType application/x-httpd-php .xhtml AddType application/xhtml+xml .php index.php; <?php header("Content-Type: application/xhtml+xml"); echo "<?xml version=\"1.0\" encoding=\"Shift_JIS\"?>"; ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" > <head> <meta http-equiv="ContentType" content="application/xhtml+xml" /> <meta content="i-mode7_FOMA" /> <title>タイトル</title> </head> <body> <?php readfile("./numbers3/n3temp.txt"); ?> </body> </html>

    • ベストアンサー
    • CSS
  • AddTypeで指定したMIMEタイプが適用されない?

    次のような2つのファイルがhttp://example.example/にあるとします。 .htaccess (内容は下に表示) index.html (適当なxhtml文書) ---- .htaccess ---- AddType application/xhtml+xml html DirectoryIndex index.html ------------------- そこでhttp://example.example/にアクセスすると、 index.htmlへアクセスされるわけですが、 この時のMIMEタイプはtext/htmlになってしまいます。(サーバの元々の設定が適用される) http://example.example/にアクセスしてMIMEタイプapplication/xhtml+xmlで取得するにはどのようにすればいいのでしょうか。

    • ベストアンサー
    • HTML
  • 携帯サイト作成する場合の.htaccess処理で困っています。

    携帯サイト(XHTML+CSS)の作成方法を勉強している最中で.htaccessファイルを作成していたのですがうまく動かない部分がありますのでお手数ですが対応方法をお教え頂けますでしょうか。 .htaccessでapplication/xhtml+xmlの情報を送り、さらにPHPファイルをhtmlの拡張子で動作できればと思い、いろいろなサイトの情報を集めて下記内容を作成しアップロードしたところ、Content-Typeがapplication/xhtml+xmlにならずにtext/htmlのままPHPプログラムが動作しました。(AddTypeを無視しているようです) [.htaccess] AddHandler x-httpd-php442 .php .html AddType "application/xhtml+xml; charset=Shift_JIS" .html AddHandlerの".html"を消すと今度はContent-Typeがapplication/xhtml+xmlになりますがPHPが動作しなくなります。 AddHandler x-httpd-php442 .php .htmlの1行を.htaccessに記述し、 HTMLファイル内に<?=header("Content-type: application/xhtml+xml");?>を入力すれば表示されるのですが、できれば.htaccess一つで済めばと思います、、、。 サーバーはKDDIウェブコミュニケーションズ(CPI)のX10プランを使用しています。このサーバーは注意事項として"弊社サーバーでは .htaccessファイルにてphp_valueおよびphp_flag はご利用いただけません"との文言がありました。(※php.iniの修正は可能のようです) 良い書き方があればお教え頂ければ幸いです。 何卒宜しくお願いいたします。

    • ベストアンサー
    • PHP
  • 【質問】XHTMLの拡張子は?

    【質問】XHTMLの拡張子は? お世話になります。 (1) どうしても教えていただきたいこと HTML互換XHTML1.0にて、サイト制作を考えております。 このときの拡張子は、 .html にし、 メディアタイプは、 text/html と指定すべきでしょうか。 このときの拡張子を、 .xhtml にし、 メディアタイプは、 text/html と指定するのは、間違いでしょうか。 (2) できれば知りたいこと うえの場合において、 .htaccessを利用して。 IE等には、text/html を返し、 IE以外には、application/xhtml+xml を返すことができるようです。 この場合、 text/html を返すファイルは .html のファイル application/xhtml+xml を返すファイルは .xhtml のファイルのように、 内容が同じで、拡張子だけ違うファイルを、2つ用意しなければならないのでしょうか。 ネットサーフィンをしまくったものの、不明だったため、質問しました。 ご存じの方、1つだけでも構わないので、教えていただけると助かります。 よろしくお願いいたします。

    • ベストアンサー
    • HTML
  • PHPをHTMLで出力したい。

    PHPを使い、 仮にaaa.htmlの中にbbb.htmlというデータをインクルードして、 aaa.phpではなく、aaa.htmlとして出力したいのですが、うまくいきません。 .htaccessを 調べたらよく出てくる AddType application/x-httpd-php html を入れて 同じ階層にアップしてもうまくいきません。 具体的にどうなるかというと、~~/aaa.htmlと打つ(URL欄に)とダウンロードになってしまいます。(ページのaaa.htmlをデータをダウンロード) ブラウザはサファリです。 これはaaa.htmlのデータをxhtmlと宣言しているからでしょうか? AddType application/xhtml+xml html もいれて AddType application/xhtml+xml html AddType application/x-httpd-php html ともしてみたのですが、結果は同じです。 ちなみにaaa.phpでは問題なく表示されます。 レンタルサーバーでもphpは対応しています。 AddType application/xhtml+xml html AddType application/x-httpd-php html (改行) でもダメです、調べた限りをつくしました。。 解決策の程、宜しくお願い致します。

    • ベストアンサー
    • PHP
  • XHTMLがIEのみ文字化け(UTF-8)

    XHTMLで記述しUTF-8で保存した拡張子.htmlのファイルが、IE8で開いた時だけ文字化けします。 以下、試したことと問題点です。 <meta>を入れる→改善した>XHTMLでは<meta>は入れないことになっているので入れたくない。 BOMを付けて保存→改善した>BOMを付けていいのかどうか分からない。 .htaccessで「AddType application/xhtml+xml .html」を入れる→IEではダウンロードになってしまう>問題外。 XML宣言を抜く→改善した>抜きたくない。 ブラウザで何度も更新→解消した>解決してない。 XHTMLで書かれたサイトはたくさんあるのでちゃんとした解決策があるとは思うんですが、ググった限りでは、<meta>を入れろという記述か、ケータイサイトの話か、閲覧者のレジストリをいじるくらいしか見つけられませんでした。 本当の解決法を教えてください。 ちなみに、XML宣言とDOCTYPE宣言は正しく(Another-HTML lintで100点)書かれています。

    • ベストアンサー
    • XML

専門家に質問してみよう