Chrome'un her zaman PDF'leri kendi kendine açmasını sağlayın


37

Bir bağlantıyı tıklattığımda, varsayılan konuma indirmektense Google Chrome’u her zaman PDF’leri kendi iç görüntüleyicisiyle açacak bir yol arıyorum. Çoğu URL ile çalışır, ancak bazı sunucular dosyayı indirmeye zorlamak için özel bir başlık belirler ( "Content-Disposition: attachment;"örneğin, http://www.uni-goettingen.de/tr/46260.html ).

İstediğim şey bu sorunun tam tersi: PDF’lerin Google Chrome’da gösterilmesini veya burada ne istendiğini, ancak Chrome’a uygulanmasını durdurma : Firefox’ta “Content-Disposition: attachment”

BTW, Ubuntu 10.4’de Chrome 8.0.552.0 dev’i çalıştırıyorum.


1
PDF Google Dokümanlar'da açılırsa kabul edilebilir mi?
Sathyajith Bhat

İşletim sistemini etiketlemeniz gerektiğini düşünüyorum çünkü bazı yanıtlar yalnızca OSX’de çalışıyor gibi görünüyor.
Shimmy

Yanıtlar:


15

"Yönlendirici" yanıtı tam aradığım şeydi, ancak bu uzantı artık mevcut değil. Bu yüzden kazmaya devam ettim ve Modify Content- Type'ı buldum . Beklediğim gibi çalışıyor (Content-Dispozisyona rağmen dahili görüntüleyicide PDF'ler açılıyor: yanıt başlıklarına ek olarak):

URL Filter:       .*
Original Type:    application/.*pdf
Replacement Type: application/pdf
Disposition:      inline

Bunun sizi siteler arası komut dosyası güvenlik açıklarına maruz bırakabileceğini ve URL filtresinde. * İzin vermemenizin akıllıca olacağını unutmayın. Sadece gerektiği gibi ekleyin.


İşe yarayan gibi görünen bir kuralm var ve PDF'lerle sınırlı tutulmalı (XSS'deki güvenlik açıkları hakkında bilgim yok ve herhangi bir şey .pdf uzantılı olabilir, bu yüzden hala farkında olun): URL Filter: https?: / /.*\.pdf Orjinal Tip. * Yedek Tip: uygulama / pdf Yerleştirme: satır içi
Scott Stevens

Bu filtrenin sizi XSS'ye nasıl savunmasız bırakabileceğini açıklayabilir misiniz?
Dai

owasp.org/index.php/DOM_Based_XSS "Stefano Di Paola ve Giorgio Fedon, Acrobat PDF eklentisine karşı evrensel bir XSS saldırısı tanımladı. Bu saldırı DOM tabanlı XSS'nin parça varyantını PDF belgelerine uyguladı. Araştırmacılar, bir PDF belgesinin PDF belgelerine hizmet ettiğini keşfetti. Tarayıcı, Acrobat eklentisi tarafından oluşturulduğunda, parçanın bir kısmını Javascript olarak çalıştırır, Javascript mevcut sitenin içeriğinde (DOM) yürütüldüğünden, bu kusuru kullanmak için gereken tüm saldırganlar basitçe XSS koşulunun karşılanması için sitenin bir yerinde PDF bağlantısı. "
Eric Angell

Pek çok site, kullanıcıları bu tür potansiyel istismarlardan korumak için içerik düzenleme başlığını kullanır. Potansiyel açıkları olan diğer PDF eklentileri de mevcut, bu yüzden eski bir örnek olduğu için başkalarının olamayacağı anlamına gelmediğine inanmayın.
Eric Angell

13

Yönlendirici uzantısını Content-Dispositionkullanarak yanıt başlığını kaldırabilirsiniz . Sadece başlık kaldırma bir kural ekleyin . Kural Düzenleyicisi’nde nasıl göründüğü: Content-Dispositionyönlendirici kuralı

Bu kural uygulandığında, tüm PDF'ler dahili görüntüleyicide açılacaktır.


2
Düğmelere benzeyen açılır menülerden "Wildcard" ve "Response Header" seçilmesi önemlidir - ilk başta bunu kaçırdım.
Brilliand

2
Chrome uzantısı artık mevcut değil. Bir alternatif için superuser.com/a/755252/165804 adresine bakın .
Oliver Joseph Ash,

-1

URL çubuğunda, chrome://plugins/Adobe eklentisini arayın ve Devre Dışı Bırak'ı tıklayın.

Chrome'u yeniden başlatın ve bir PDF yükleyin; dosya Google PDF eklentisini kullanarak yüklenir.


Tam olarak OS X üzerinde çalışmam için yapmam gerekeni yaptı
Nick

3
@ Kyla'nın yorumu: Bu benim için işe yaramadı :( sadece çevrimiçi görüntülemek yerine onları indirmeye zorlayan sadece bu web sitesidir.
Ivo Flipse

hangi chorme sürümünü kullanıyorsunuz benim için mükemmel çalışıyor ...
Cesar A. Rivas

2
Bu farklı bir sorunu çözüyor gibi görünüyor.
Jdm ile

1
Bendede aynı sorun var; Chrome PDF eklentisi makinemde zaten etkin. PDF'yi bir Chrome sekmesinde açmak için PDF'nin indirilmesi gerektiğini (örneğin, bir meta yenileme veya bir MIME girişiyle) belirten sayfaları zorlamaya çalışıyorum, çünkü tek yapmam gereken PDF'yi bulmak sabit sürücüyü açın ve açın, ardından tekrar bulup silmek zorundasınız. OP'nin de aynı şeyi yapmaya çalıştığını düşünüyorum.
Chris Moschini

-1

Dene --no-sandbox option.

Bu sizin kısayolunuz olmalı:

"C:\Program Files\Google\Chrome\Application\chrome.exe" --app="http://superuser.com" --no-sandbox

Nasıl çalışırdı? --no-sandboxsanal alanı devre dışı bırakmalı, HTTP başlıklarını yoksaymamalı, değil mi?
gronostaj
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.