Wysyłanie XHTML jako XHTML
Jeżeli dokument napisany zgodnie ze specyfikacją XHTMLa wysyłany jest do przeglądarki jako text/html niczym wtedy nie różni się od zwykłego HTML, bo interpretowany jest przez
przeglądarkę jako HTML, który zawiera błędy składniowe (HTML nie należy do rodziny XML).
Zawartość pliku (np. DOCTYPE) nie definiuje sposobu interpretacji dokumentu przez przeglądarkę, bo przeglądarka przed rozpoczęciem czytania pliku musi już wiedzieć w jaki sposób go czytać.
Poprawną interpretację można zapewnić jedynie poprzez wysyłanie XHTML z odpowiednim MIME Type —
application/xhtml+xml. Typ przesyłany jest w nagłówkach HTTP, które są niewidoczne dla użytkownika i ich ustawienie wymaga specjalnej
konfiguracji serwera.
Można zmienić rozszerzenie pliku na *.xhtml, a w konfiguracji serwera wpisać AddType application/xhtml+xml .xhtml
Kompatybilność wstecz
Nie wszystkie przeglądarki i roboty wyszukiwarek potrafią obsługiwać XHTML. Im, dla kompatybilności, można wysyłać XHTML jako HTML (co jednak pozbawia XHTML wszelkich przewag nad HTML). Możesz wysłać typ MIME obsługiwany przez przeglądarkę poprzez dopisanie do httpd.conf:
RewriteEngine OnRewriteCond %{HTTP_ACCEPT}%{HTTP_USER_AGENT} application/xhtml+xml|W3C_Validator|WebKitRewriteCond %{HTTP_ACCEPT} !application/xhtml+xml;q=0;RewriteCond %{REQUEST_URI} .htm(l)?RewriteRule .* — [T=application/xhtml+xml]
Pytania? Komentarze? Napisz na forum kursu lub edytuj tę stronę.
Zmodyfikowano: 12.09.2011, 18:46