Content Negotiation

Il protocollo HTTP definisce 4 header che il client invia al server per specificare quali risorse hanno priorità rispetto ad altre o semplicemente quelle che vengono rifiutate.

Accept
Header che specifica quali Mime types accetterà il client, e con quale preferenza:
Accept: text/html, image/ *, application/pdf
in questo caso il client accetta tutti i documenti in html e qualsiasi tipo di immagine e di pdf, dando la priorità ai documenti html, poi alle immagini ed infine i documenti in pdf

Accept-Charset
Header che specifica i charset che il client accetta:
Accept-Charset: iso-8859, *

Accept-Encoding
Gli encodings che il client accetta:
Accept-Encoding: bzip2, gzip, zip

Accept-Language
Le lingue accettate dal client (in ordine di preferenza):
Accept-Language: en,fr,de

Tramite la direttiva Multiviews è possibile configurare Apache per fare un'appending automatico della estensione (secondo le entry del file mime.types) ad un file richiesto che non esiste.
Attivazione  della direttiva Multiviews
Options +Multiviews
Ammettiamo che sia stata attivata per la directory /pippo/ e che venga fatta una richiesta per il file /pippo/index.html, se il file index.html non esiste, in modo automatico Apache cercherà nella directory tutti i seguenti documenti index.html.*  a seconda delle entry in mine.types. Questa soluzione è molto vantaggiosa per quando si ha che fare con siti multilingua.

Privacy Policy