こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

リンク先のpdf をwebブラウザで開きたい

あるグループの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ブラウザの設定など教えてください。

投稿日時 - 2014-06-18 21:44:58

QNo.8643931

困ってます

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

おそらく、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」を追加してあげると良いでしょう。

投稿日時 - 2014-06-18 22:32:06

補足

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

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

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

投稿日時 - 2014-06-23 23:19:45

ANo.1

このQ&Aは役に立ちましたか?

10人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問