プロが教えるわが家の防犯対策術!

あるグループのWEBページを管理していて、リンク先に指定したpdfファイルをブラウザで表示したいと思っています。ところが、自分のパソコン上ではブラウザ上にpdfファイルが表示できるのですが、WEBサイトに上げると、「ダウンロード」になってしまいます。
ブラウザはIEとChromeを使っています。
状況をもう少し詳しく述べますと、
PC上では   IE Chrome 共にブラウザ上で開く
Web 上では  IE : ・ 開く(=アドビリーダーが起動しそこで開く) ・保存   の二択
       Chrome: “ダウンロード”フォルダーに保存される
なお、jpg ファイルはhtmlファイル同じくブラウザ上に開きます。
ソースはリンク先がhtmlファイルの場合と同様に、<a href="aaa.pdf">AAA</a>  としています。
Windows2007、 IE11、 Chrome33 です

念のため追記します。
私以外のwebページ閲覧者のwebブラウザ上でpdfファイルが開くようにしたいのです。そのためのソースの書方、あるいはwebブラウザの設定など教えてください。

A 回答 (1件)

おそらく、Webサーバーにおいて、 *.pdf に対する、mime type が設定されていないことによるものだと思います。


ブラウザの設定によるものでは無いでしょう。(一般の企業ページなどで、PDFファイルを直接開けますよね?)

とりあえず、メモ帳などで次の「.htaccess」ファイルを作って、pdfファイルと同じフォルダに、置いてみてください。

.htaccess
--------
AddType application/pdf .pdf
--------

これが設定されていると、Webサーバから*.pdfファイルを送信する際に、

Content-type: application/pdf

という行が追加され、「これから送るデータはPDFファイルだ」とブラウザに明示することになります。
この行を見て、ブラウザは、pdfプラグイン等を起動し、ブラウザ内でPDFの直接表示ができます。

上記のmime type 設定がなされていないと、httpヘッダには以下のような行が入ります。

Content-type: application/octet-stream

すなわち、PDFではなくただのバイナリデータ列だ、というような記述がなされてしまい、ダウンロードや、外部プログラムの起動というパターンになってしまいます。

本当は、Webサーバのどこに置いてもmime type が有効になるように、httpd.conf の方を修正したいところなんですが、それは大本のWebサーバ設定ファイルですので、サーバ管理者でないといじれないかもしれません。

また逆に、Webサーバ設定がGUIでできるようになっている場合、「mime typeの設定」というようなメニューで、「pdf」に対する「application/pdf」を追加してあげると良いでしょう。

この回答への補足

数日家を留守にしていたため、遅くなりましたが、お教えいただいた「.htaccess」ファイルを作成しました。ところが、FTTPソフトでWEBサイト(Yahoo Geocities 無料)にアップロードしようとしましたが、「アップロードできませんでした」のメッセージで、何回やってもアップロードできませんでした。参考に利用したWEBページにあった、「拡張を付けてアップしてからFTPソフトで名前を変更」も試しましたが、名前を戻すことができませんでした。
このWEBサーバーは「.htaccess」のような名前を認めていないのではないかと思います。

なお、メモ帳で「名前を付けて保存」で「.htaccess」をパソコンに保存できたのですが、「htaccess.text」に変更した名前をパソコン上で元に戻そうとしても戻りませんでした。

「.htaccess」のコマンドを<head>に記述するというようなことはできないものでしょうか?
試してみようと思いましたが、記述の仕方が分りません。
申遅れましたが、既存のWEBページのソースを真似してhtmlを記述しているという程度の初心者ですので馬鹿な質問かもしれませんがよろしくお願いいたします。

補足日時:2014/06/23 23:19
    • good
    • 1

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!