
Webデータ作成初心者なのですが、教えて下さい。
HTMLで<A HREF="×××.xls">ここからダウンロード</A>
というような記述を含むファイルを作成し、「×××.xls」ファイルと一緒にWeb上にアップしました。
ローカル上で動作確認した際は、「ここからダウンロード」をクリックすると、ファイルを開くか、ディスクに保存するかを確認するダイアログボックスが表示され、開く事もファイルに保存する事も出来たのですが、Web上にアップしたデータをネスケから確認すると、ダイアログボックスも開かず、ただ1~2行の文字化けしたテキストが表示されるページに飛んでしまいます。IEから確認すると、ブラウザ上からExcelが開いて、ブラウザのメニューバー等はそのままで、ブラウザ画面内に「×××.xls」のファイルが開かれます。
転送に使用しているソフトはFFFTPです。エクセルファイルをアップする際に、アスキーで送ったりバイナリで送ったりと試したのですが、どちらもだめでした。
考えられる原因、回避策など教えて下さい。よろしくお願いしますm(__)m
No.3ベストアンサー
- 回答日時:
通常、一般的に使用されている Apache 等の web サーバは、拡張子 xls に対して、
Content-Type: application/vnd.ms-excel
という "HTTP ヘッダ" という類の応答メッセージを、閲覧要求 (リンク) に対して、該当ファイルをブラウザに送る前に送信しています。
この、Content-Type ヘッダというのは、MIME Types と一般的に言われ、ブラウザに対して、「このファイルはこういう中身のものでっせ」と伝えているというものです。その応答に対して、ブラウザ側でその Content-Type に該当するファイルをブラウザで開くときの振る舞い (ダウンロードさせるのか、外部プログラムで開くのか、ブラウザ上に開くのか) や、開くアプリケーション等の選択などの処理を振り分けています。
Netscape のバージョンが書かれていないので何とも言えないのですが、基本的に Netscape 系のブラウザは、これらの Content-Type ヘッダ (MIME Types) に応じて行う振る舞いが設定できます。
一般公開する場合に「MIME の設定をしてくれ」とは普通言わないので、これらのファイルをダウンロードさせるためには、共通して
Content-Type: application/octet-stream
というヘッダを出力させないといけません。
仮にその web サーバが Apache 等のサーバアプリケーションを使用していれば、.htaccess 等の名前 (とは限らないが) で xls の場合に応答する Content-Type を指定できる "可能性" があります。
まず、そのサーバの管理者 (管理会社) に「.htaccess (ドットエイチティーアクセス) の設置が出来るか、また出来る場合は FileInfo (ファイルインフォ) の属性変更は適用されるか」をお尋ね下さい。
FileInfo の変更権限がなければ、これらは意味がなくなります。
もしこれらが OK である場合には、.htaccess というファイルを、xls ファイルのあるディレクトリ (または、その上位ディレクトリ) に置かないといけません。
(ドットから始まる、拡張子のみのファイルになるので、Windows 環境では普通作れません。なので、_htaccess 等のファイル名にして、サーバにアップ後、サーバ上のファイル名を変更してください)
.htaccess には
AddType application/octet-stream xls
という一行だけ書いてください。
そうすれば、Netscape でダウンロードするときにダウンロードダイアログが表示されるはずです。
ちなみに、Internet Explorer は、Content-Type ヘッダを無視して、ブラウザ側で独自にファイル内容を解析して、適宜特定のアプリケーションで開いてしまうという "腐った実装" がなされているため、これらを行っても、Excel が開いてしまいます。
.htaccess が設置できない場合、または、.htaccess が OK でも、IE でダウンロードさせたい場合は「諦めてください」としかいいようがありません。
圧縮するなりして、「ダウンロードさせる」為の拡張子 (必ず "ダウンロード" になる拡張子) を付加させないと、実現は不可能です。
詳しい説明有難うございます。初心者にも大変分かりやすかったですm(__)mおかげで原因がわかり、無事Excelデータをダウンロード出来るようになりました。有難うございました!!
No.2
- 回答日時:
ネットスケープではテキストファイルと判断されるため。
IEではIE自体でエクセルのファイルが閲覧できるためでしょう。
対処方法は2種類です。
1.エクセルファイルをzip、lzhなどで圧縮してアップする。
2.右クリックからDLしてもらうように記述する。
(どちらのブラウザでも右クリックすれば保存するためのメニューが選択できます。)
右クリックからファイルを保存出来る事は今まで気付きませんでした。今後.htaccessの設定を変更出来ない場合などに活用させて頂きます!!有難うございました。
No.1
- 回答日時:
環境にもよりますが、.htaccessでMIMEタイプを設定できます。
自分はちょっと詳しくないので、検索結果を参考にいれておきます。
ちなみにIEは、拡張子を優先してMIMEタイプを無視する傾向にあるので、
設定されていなくても(不明なファイルであっても)開くことができるのです。
参考URL:http://www.google.co.jp/search?hl=ja&inlang=ja&i …
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ダウンロードについて
-
CSVダウンロード後のアラート表示
-
java_run.batがダウンロードで...
-
Webサイトから、txtファイルを...
-
ASPでバイナリーファイルをダウ...
-
CSVファイルをサーバからクライ...
-
HTMLからフォルダを開きたい
-
直リンク禁止
-
メールに添付されたhtmlファイ...
-
古いMacの画像が見たいけど見ら...
-
Dreamweaverでページ全体が文字...
-
<a href="/">トップへ</a> こ...
-
見れる方・・
-
jpg画像が表示されない
-
DreamWeaver文字コードが変更さ...
-
HTMLファイルからリンクタグだ...
-
タイトルバーを非表示にできま...
-
.htmlファイルを.phpにした時に...
-
リンク先に日本語フォルダがあ...
-
lang 英語と日本語など混ざる時は
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Webサイトから、txtファイルを...
-
HTMLページが勝手にダウンロー...
-
【HTML】1クリックで複数ファイ...
-
java_run.batがダウンロードで...
-
URLDownloadToFile でダウンロ...
-
VBA URLDownloadToFileについて
-
○○.ico→○○.jpgやbmpなど...
-
イラストレーターのaiファイル...
-
HTTP機能で、サーブレットでPDF...
-
ファイルをダウンロードすると...
-
ホームページビルダー8を使って
-
ZIPの拡張子のついたURLがダウ...
-
WEB上でPDF閲覧のみにしたいです。
-
リッチテキスト入力した内容(ti...
-
VC++でHTTPプロトコルを用いた...
-
VBAでIEのファイルを自動的にダ...
-
無償で使えた Turbo D...
-
Win64bitのPHP5.4をダウンロー...
-
.torrentについておしえてください
-
javascriptでファイルダウンロ...
おすすめ情報