aboutsummaryrefslogtreecommitdiff
path: root/files/pl/learn/server-side
diff options
context:
space:
mode:
authorFlorian Merz <me@fiji-flo.de>2021-02-11 14:49:24 +0100
committerFlorian Merz <me@fiji-flo.de>2021-02-11 14:49:24 +0100
commitde5c456ebded0e038adbf23db34cc290c8829180 (patch)
tree2819c07a177bb7ec5f419f3f6a14270d6bcd7fda /files/pl/learn/server-side
parent8260a606c143e6b55a467edf017a56bdcd6cba7e (diff)
downloadtranslated-content-de5c456ebded0e038adbf23db34cc290c8829180.tar.gz
translated-content-de5c456ebded0e038adbf23db34cc290c8829180.tar.bz2
translated-content-de5c456ebded0e038adbf23db34cc290c8829180.zip
unslug pl: move
Diffstat (limited to 'files/pl/learn/server-side')
-rw-r--r--files/pl/learn/server-side/configuring_server_mime_types/index.html114
-rw-r--r--files/pl/learn/server-side/express_nodejs/tutorial_local_library_website/index.html (renamed from files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html)0
2 files changed, 114 insertions, 0 deletions
diff --git a/files/pl/learn/server-side/configuring_server_mime_types/index.html b/files/pl/learn/server-side/configuring_server_mime_types/index.html
new file mode 100644
index 0000000000..87aea6b3b3
--- /dev/null
+++ b/files/pl/learn/server-side/configuring_server_mime_types/index.html
@@ -0,0 +1,114 @@
+---
+title: Poprawna kofiguracja MIME na serwerze
+slug: Web/Security/Securing_your_site/Konfiguracja_MIME_na_serwerze
+tags:
+ - HTTP
+translation_of: Learn/Server-side/Configuring_server_MIME_types
+---
+<h2 id="Background" name="Background">Kontekst</h2>
+
+<p>Wiele serwerów webowych domyślnie ma skonfigurowane raportowanie typów MIME <code>text/plain</code> lub <code>application/octet-stream</code> w przypadku nierozpoznanych typów zawartości. Kiedy nowe typy zawartości dopiero powstają lub są dodawane do serwerów webowych zdarza się, że administratorzy webowi nie dodają nowo-powstałych typów MIME do ustawień serwera webowego. I to właśnie stanowi główną bolączkę użytkowników przeglądarek opartych o Gecko, które uznają typy MIME jako zraportowane przez serwery i aplikacje webowe.</p>
+
+<h3 id="What_are_MIME_types.3F" name="What_are_MIME_types.3F">Czym są typy MIME?</h3>
+
+<p>Typy MIME opisują typ danych zawartości mailowej lub obsługiwanej przez serwery lub aplikacje webowe i ich zadaniem jest pomoc przeglądarce w przetworzeniu i wyświetleniu zawartości. Przykładami typów MIME są:</p>
+
+<ul>
+ <li><code>text/html</code> dla zwykłych stron WWW</li>
+ <li><code>text/plain</code> dla zwykłego tekstu</li>
+ <li><code>text/css</code> dla kaskadowych arkuszy stylów</li>
+ <li><code>text/javascript</code> dla skryptów</li>
+ <li><code>application/octet-stream</code> przy pobieraniu pliku</li>
+ <li><code>application/x-java-applet</code> dla apletów Javy</li>
+ <li><code>application/pdf</code> dla dokumentów PDF</li>
+</ul>
+
+<h3 id="Technical_Background" name="Technical_Background">Kontekst techniczny</h3>
+
+<p>Zarejestrowane wartości MIME są dostępne w <a class="external" href="http://www.iana.org/assignments/media-types/index.html">Typy danych IANA | MIME</a>. <a class="external" href="http://www.w3.org/Protocols/HTTP/1.1/spec.html">Specyfikacja HTTP</a> definiuje nadzbiór typów MIME, który jest używany do opisu typów danych używanych w sieci WWW.</p>
+
+<h3 id="Why_are_correct_MIME_types_important.3F" name="Why_are_correct_MIME_types_important.3F">Dlaczego poprawne typy MIME są tak istotne?</h3>
+
+<p><img alt="Example of an incorrect MIME type result" class="internal" src="/@api/deki/files/729/=Incorrect-mime-screen.jpg" style="float: right;"> Jeśli serwer lub aplikacja webowa dla danej zawartości raportuje niepoprawny typ MIME, przeglądarka nie ma możliwości, <em>wg specyfikacji HTTP</em>, wiedzieć, że autor zainicjował przetworzenie i wyświetlenie danej zawartości w odmienny sposób, niż domyślny dla zraportowanego typu MIME.</p>
+
+<p>Niektóre z przeglądarek, jak Microsoft® Internet Explorer, dążą do zezwalania niepoprawnie skonfigurowanym serwerom i aplikacjom webowym na <em><a class="external" href="http://support.microsoft.com/default.aspx?sd=msdn&amp;scid=kb;en-us;293336">zgadywanie</a></em>, jaki powinien być poprawny typ MIME. Takie podejście uchroniło wielu administratorów webowych przed własnymi błędami - Internet Explorer kontynuuje przetwarzanie zawartości zgodnie z oczekiwaniami mimo, że sam serwer webowy nie jest poprawnie skonfigurowany i np. wyświetla obrazek, który został zraportowany jako będący rzekomo zwykłym tekstem.</p>
+
+<p>Obsługa treści poprzez używanie poprawnego typu MIME jest istotna także z punktu widzenia bezpieczeństwa; istnieje ryzyko wyrządzenia przez niechcianą treść szkód na komputerze użytkownika poprzez symulowanie, że typ danej zawartości jest bezpieczny mimo, że w istocie może nie być to prawda.</p>
+
+<div class="note">
+<p><strong>Zauważ:</strong> Kiedyś Firefox ładował pliki CSS nawet, jeśli posiadały błędny typ MIME. Wystarczyło, że dokument HTML, który o nie wnioskował działał w trybie osobliwości (quirks mode). Ze względów bezpieczeństwa, {{ gecko("2.0") }} nie będzie dłużej kontynować tego typu zachowań w przypadku arkuszy stylów ładowanych z innych źródeł, niż dokument, który o nie wnioskował. Jeśli Twój arkusz stylów pochodzi z innego źródła, niż główny dokument <strong>musisz </strong>obsłużyć go poprzez poprawny typ MIME (<code>text/css</code>).</p>
+
+<p>Gecko 1.9.1.11 (Firefox 3.5.11) i Gecko 1.9.2.5 (Firefox 3.6.5) również zaimplementowały tę łatkę bezpieczeństwa, ale by polepszyć zgodność <strong>tymczasowo </strong>istniała heurytrystyka pozwalająca na załadowanie, jeśli pierwsza linia w arkuszu stylów wydawała się być poprawną konstrukcją CSSową; heurytrystyka ta została usuninęta w Firefoxie 4 i od tego czasu należy odpowiednio ustawić typy MIME <code>text/css</code>, aby strony CSS zostały rozpoznane.</p>
+</div>
+
+<h2 id="Why_browsers_should_not_guess_MIME_types" name="Why_browsers_should_not_guess_MIME_types">Dlaczego przeglądarki nie powinny zgadywać typów MIME</h2>
+
+<p>Poza naruszaniem specyfikacji HTTP istnieją dodatkowe powody, dla których zgadywanie typów MIME nie należy do najlepszych praktyk:</p>
+
+<h4 id="Loss_of_control" name="Loss_of_control">Utrata kontroli</h4>
+
+<p>Jeśli przeglądarka ignoruje zaraportowany typ MIME, administratorzy i autorzy webowi nie mają dłużej kontroli nad sposobem przetwarzania danej zawartości.</p>
+
+<p>Przykładowo, strona WWW ukierunkowana na twórców witryn może życzyć sobie przesłania pewnych dokumentów, przykładowo HTMLowych, jak również <code>text/html</code> lub <code>text/plain</code>, by móc je przetworzyć i wyświetlić jako HTML lub jako kod źródłowy. Jeśli przeglądarka będzie zgadywać typ MIME, tego typu możliwość nie będzie dłużej dostępna dla autora.</p>
+
+<h4 id="Security" name="Security">Bezpieczeństwo</h4>
+
+<p>Niektóre typy zawartości, jak pliki wykonywalne, są przeważnie niebezpieczne. Z tego powodu te typy MIME przeważnie są ograniczone pod względem akcji, jakie podejmie przeglądarka w przypadku tego typu plików. Plik wykonywalny nie powinien wykonywać się na komputerze użytkownika, co najwyżej może mieć prawo do wyświetlenia okienka <strong>z zapytaniem do użytkownika</strong>, czy chce pobrać ten plik.</p>
+
+<p>W Internet Explorerze zgadywanie typów MIME doprowadziło do naruszenia bezpieczeństwa - przez niepoprawne zgadywanie szkodliwe treści bywały oznaczane jako bezpieczne, co skutkowało pominięciem wyświetlania standardowego okienka pobierania i przedostawaniem się plików wykonywalnych na komputery użytkowników.</p>
+
+<h2 id="Jak_określić_typ_MIME_który_jest_wysyłany_przez_serwer">Jak określić typ MIME, który jest wysyłany przez serwer</h2>
+
+<p>W Firefoxie załaduj plik i użyj Narzędzia | Informacje o witrynie. Możesz również użyć <a class="external" href="http://www.rexswain.com/httpview.html">Rex Swain's HTTP Viewer</a> lub <a class="external" href="http://livehttpheaders.mozdev.org/">Live HTTP Headers</a> , aby zobaczyć pełne nagłówki i treść każdego pliku wysłanego z serwera webowego.</p>
+
+<p>W odniesieniu do standardów, tag <code>meta</code> o typie MIME jak np. <code><span class="nowiki">&lt;meta http-equiv="Content-Type" content="text/html"&gt;</span></code> powinien być ignorowany, jeśli w nagłówku znajduje się zapis {{HTTPHeader("Content-Type")}}. Zamiast szukać tej linii w kodzie źródłowym HTML lepiej użyć powyższych technik do określenia typu MIME wysyłanego przez serwer.</p>
+
+<h2 id="Jak_określić_prawidłowy_typ_MIME_dla_Twojej_treści">Jak określić prawidłowy typ MIME dla Twojej treści</h2>
+
+<p>Jest kilka kroków, które należy zrobić by określić poprawną wartość dla typu MIME twojej treści.</p>
+
+<ol>
+ <li>Jeśli twoja treść została utworzona z pomocą zewnętrznego oprogramowania, przeczytaj jego dokumentację by dowiedzieć się, jakie typy MIME powinny zostać zraportowane dla danych typów danych.</li>
+ <li>Zerknij na <a class="external" href="http://www.iana.org/assignments/media-types/index.html">rejest typów danych IANA | MIME</a>. Zawiera on wszystkie zarejestrowane typy MIME.</li>
+ <li>Jeśli typ danych jest wyświetlany poprzez rozszerzenie w Netscape Gecko, zainstaluj wtyczkę, a następnie sprawdź Pomoc-&gt;O Menu Wtyczek, by sprawdzić jakie typy MIME są związane z typem danych.</li>
+ <li>Poszukaj rozszerzenia pliku w <a class="external" href="http://filext.com/">FILExt</a> lub <a class="external" href="http://www.file-extensions.org/">File extensions reference</a>, aby sprawdzić jakie typy MIME są związane z tym rozszerzeniem.</li>
+</ol>
+
+<h2 id="Jak_przygotować_serwer_żeby_wysyłał_poprawne_typy_MIME">Jak przygotować serwer, żeby wysyłał poprawne typy MIME</h2>
+
+<p>Fundamentalną kwestią jest konfiguracja Twojego serwera w taki sposób, by wysyłał poprawny nagłówek HTTP {{HTTPHeader("Content-Type")}} dla każdego dokumentu.</p>
+
+<ul>
+ <li>Jeśli używasz serweru webowego Apache to po prostu skopiuj ten <a href="/en/Sample_.htaccess_file" title="en/Sample_.htaccess_file">fragment pliku .htaccess</a> do lokalizacji, która zawiera pliki, które chcesz wysłać z poprawnymi typami MIME. Jeśli masz cały podkatalog plików, po prostu umieść plik w katalogu nadrzędnym; nie ma potrzeby umieszczania go w każdym podkatalogu.</li>
+ <li>Jeśli uzywasz Microsoft IIS, sprawdź <a class="external" href="http://technet2.microsoft.com/windowsserver/en/library/ec84d61e-3e24-4de0-b35a-d41eb662fefb1033.mspx">ten artykuł</a> na Microsoft TechNet</li>
+ <li>Jesli używasz do generowania treści używasz skryptu działającego po stronie serwera, możesz po prostu dodać jedną linijkę praktycznie na samej górze Twojego skryptu. Możesz obsługiwać zawartość inną, niż HTML, właściwą dla Perla, PHP, ASP czy Javy - tylko zmień odpowiednio typ MIME.
+ <ul>
+ <li>W przypadku Pearl CGI zadbaj o zapis <code>print "Content-Type: text/html\n\n";</code> przed jakimkolwiek pozostałym outputem. Jeśli używasz modułu CGI to możesz zamiast tego użyć linii <code>print $cgi-&gt;header('text/html');</code>, gdzie <code>$cgi</code> to Twoja referencja do instancji CGI.</li>
+ <li>W przypadku PHP zadbaj o zapis <code>header('Content-Type: text/html');</code> przed jakimkolwiek pozostałym outputem.</li>
+ <li>W przypadku ASP zadbaj o zapis <code>response.ContentType = "text/html";</code> przed jakimkolwiek pozostałym outputem.</li>
+ <li>W przypadku servletu Javy zadbaj o zapis <code>response.setContentType("text/html");</code> na górze Twojej metody <code>doGet</code> lub <code>doPost</code>, gdzie <code>response</code> to referencja do <code>HttpServletResponse</code>.</li>
+ </ul>
+ </li>
+</ul>
+
+<h3 id="Related_Links" name="Related_Links">Powiązane linki</h3>
+
+<ul>
+ <li><a href="/en/Incorrect_MIME_Type_for_CSS_Files" title="en/Incorrect_MIME_Type_for_CSS_Files">Niepoprawne typy MIME dla plików CSS</a></li>
+ <li><a class="external" href="http://www.iana.org/assignments/media-types/index.html">Typy danych IANA | MIME</a></li>
+ <li><a class="external" href="http://www.w3.org/Protocols/HTTP/1.1/spec.html">Protokół transmisji hipertekstu — HTTP/1.1</a></li>
+ <li><a class="external" href="http://support.microsoft.com/default.aspx?sd=msdn&amp;scid=kb;en-us;293336">Microsoft - 293336 - INFO: WebCast: Podejście do typów MIME w Microsoft Internet Explorerze</a></li>
+ <li><a class="external" href="http://msdn.microsoft.com/workshop/networking/moniker/overview/appendix_a.asp">Microsoft - Appendix A: Wykrywanie typów MIME Type Detection w Internet Explorerze</a></li>
+ <li><a class="external" href="http://www.microsoft.com/windows/ie/downloads/critical/q290108/">Microsoft - Aktualizacja Bezpieczeństwa, 29.03.2001</a></li>
+ <li><a class="external" href="http://www.microsoft.com/windows/ie/downloads/critical/Q313675/">Microsoft - Aktualizacja Bezpieczeństwa, 13.12.2001</a></li>
+</ul>
+
+<div class="originaldocinfo">
+<h3 id="Original_Document_Information" name="Original_Document_Information">Informacje dot. dokumentu źródłowego</h3>
+
+<ul>
+ <li>Author: Bob Clary, date: 20 Feb 2003</li>
+</ul>
+</div>
+
+<div>{{QuickLinksWithSubpages("/en-US/docs/Web/Security")}}</div>
diff --git a/files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html b/files/pl/learn/server-side/express_nodejs/tutorial_local_library_website/index.html
index a23787a253..a23787a253 100644
--- a/files/pl/learn/server-side/express_nodejs/szkolenie_aplikacja_biblioteka/index.html
+++ b/files/pl/learn/server-side/express_nodejs/tutorial_local_library_website/index.html