Spraw, by Chrome zawsze otwierał pliki PDF

37

Szukam sposobu, aby Google Chrome zawsze otwierał pliki PDF za pomocą wewnętrznej przeglądarki po kliknięciu linku, zamiast pobierania go do domyślnej lokalizacji. Działa z większością adresów URL, ale niektóre serwery ustawiają specjalny nagłówek, aby wymusić pobranie pliku ( "Content-Disposition: attachment;"np. Http://www.uni-goettingen.de/en/46260.html ).

Chcę przeciwnie do tego pytania: Zatrzymaj wyświetlanie plików PDF w Google Chrome lub o to, o co tu proszony, ale zastosowany w Chrome: Jak zignorować „Content-Disposition: załącznik” w Firefox

Przy okazji, używam Chrome 8.0.552.0 dev na Ubuntu 10.4.

jdm
źródło
1
Czy byłoby dopuszczalne, gdyby plik PDF był otwierany w Dokumentach Google?
Sathyajith Bhat
Myślę, że powinieneś oznaczyć system operacyjny, ponieważ niektóre odpowiedzi wydają się działać tylko w systemie OSX.
Shimmy,

Odpowiedzi:

15

Odpowiedź „Redirector” była właśnie tym, czego szukałem, ale to rozszerzenie nie jest już dostępne. Więc kopałem dalej i znalazłem Zmodyfikuj typ zawartości . Działa zgodnie z oczekiwaniami (pliki PDF otwierają się w przeglądarce wewnętrznej pomimo Content-Disposition: załącznik w nagłówkach odpowiedzi) z regułą:

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

Zauważ, że może to narazić Cię na luki w skryptach między witrynami i rozsądnie byłoby nie dopuszczać. * W filtrze adresów URL. Dodaj do niego tylko w razie potrzeby.

Eric Angell
źródło
Mam następującą zasadę, która wydaje się działać i powinna być ograniczona do plików PDF (chociaż nie wiem o lukach w XSS, a wszystko może mieć rozszerzenie .pdf, więc nadal uważaj): Filtr adresów URL: https?: / /.*\.pdf Typ oryginału. * Typ zastępczy: application / pdf Dyspozycja: inline
Scott Stevens,
Czy możesz wyjaśnić, w jaki sposób ten filtr może narazić Cię na atak XSS?
Dai
owasp.org/index.php/DOM_Based_XSS "Stefano Di Paola i Giorgio Fedon opisali uniwersalny atak XSS na wtyczkę Acrobat PDF. W tym ataku zastosowano fragment fragmentu XSS opartego na DOM do dokumentów PDF. Badacze odkryli, że dokument PDF służy do przeglądarka renderowana przez wtyczkę Acrobat może kończyć wykonywanie części tego fragmentu jako Javascript. Ponieważ JavaScript jest wykonywany w kontekście (DOM) bieżącej witryny, atakujący musiał tylko po prostu znaleźć Link PDF gdzieś na stronie, aby spełnić warunek XSS. ”
Eric Angell,
Tak wiele witryn używa nagłówka rozmieszczenia treści, aby chronić użytkowników przed potencjalnymi exploitami, takimi jak ten. Istnieją inne wtyczki PDF z innymi potencjalnymi słabymi punktami, więc nie wierz w to, ponieważ tylko jeden stary przykład oznacza, że ​​nie mogą istnieć inne.
Eric Angell,
13

Możesz usunąć Content-Dispositionnagłówek odpowiedzi za pomocą rozszerzenia Redirector . Wystarczy dodać Content-Dispositionnagłówek usuwający regułę . Oto jak to wygląda w edytorze reguł: reguła readresatora

Po zastosowaniu tej reguły wszystkie pliki PDF zostaną otwarte w przeglądarce wewnętrznej.

ks1322
źródło
2
Wybór „Wildcard” i „Response Header” z menu rozwijanych, które wyglądają jak przyciski, jest ważny - na początku mi tego brakowało.
Brilliand
2
Rozszerzenie Chrome nie jest już dostępne. Alternatywę można znaleźć na stronie superuser.com/a/755252/165804 .
Oliver Joseph Ash
-1

Na pasku adresu URL wpisz chrome://plugins/, poszukaj wtyczki Adobe i kliknij Wyłącz.

Uruchom ponownie Chrome i załaduj plik PDF, a plik załaduje się za pomocą wtyczki Google PDF.

Cesar A. Rivas
źródło
Dokładnie to, co musiałem zrobić, aby działało na OS X
Nick
3
Komentarz @Kyla: To nie działało dla mnie :( tylko ta jedna strona zmusza mnie do pobrania ich zamiast oglądania ich online.
Ivo Flipse
jakiej wersji chorme używasz? działa dla mnie idealnie ...
Cesar A. Rivas,
2
To wydaje się rozwiązać inny problem. Zobacz drugie pytanie powiązane z jdm: stackoverflow.com/questions/3251575/…
daxlerod
1
Mam ten sam problem; wtyczka Chrome PDF jest już włączona na moim komputerze. Próbuję zmusić strony, które określają plik PDF, do pobrania (na przykład z meta odświeżaniem lub wpisem MIME), aby zamiast tego otworzyć plik PDF na karcie Chrome, ponieważ wszystko, co zamierzam zrobić, to znaleźć plik PDF na moim dysk twardy i otwórz go tam, a następnie musisz znaleźć go później i usunąć. Uważam, że OP próbował osiągnąć to samo.
Chris Moschini,
-1

Spróbuj --no-sandbox option.

To powinien być twój skrót:

"C:\Program Files\Google\Chrome\Application\chrome.exe" --app="http://superuser.com" --no-sandbox
styluu
źródło
Jak by to działało? --no-sandboxpowinien wyłączyć piaskownicę, nie ignorować nagłówków HTTP, prawda?
gronostaj