Che cos'è un browserconfig.xml semplice / minimale per un sito web


111

Non voglio fare nulla di speciale o complicato rispetto a Windows 8 e al pinning, semplicemente non voglio vedere i messaggi 404 Not Found mentre IE cerca lo browserconfig.xmlscorrimento nei miei file di registro.

C'è un browserconfig.xmlfile banale che posso mettere nella mia root che soddisferà IE e fungerà da buon segnaposto se dovessi decidere di aggiungere in seguito un supporto migliore per Windows 8?

Risposte:


79

Ho aggiunto il meta codice alla mia testa, ma ricevo ancora richieste browserconfig.xml.

Quindi penso che il modo migliore sia; secondo loro: http://msdn.microsoft.com/browserconfig.xml

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
    <msapplication>
    </msapplication>
</browserconfig>

60

Nella pagina MSDN di Microsoft è disponibile un esempio di riferimento allo schema di configurazione del browser .

Metti il browserconfig.xmlfile nella cartella principale del server web.

Puoi anche includere:

<meta name="msapplication-config" content="none"/>

nel tuo HTML per impedire a IE di cercare questo file, se questa è un'opzione che potrebbe funzionare anche tu.


6
Anche se ho il meta tag sulla mia pagina, ho visto molto raramente richieste per browserconfig.xml da un programma utente identificato come IE 11. Quindi probabilmente l'unico modo per sbarazzarsi di quei 404 è anche aggiungere un file vuoto per browserconfig. xml. Ho provato a bloccare utilizzando il file vuoto e non ho notato alcuna differenza con o senza il file vuoto.
Gerd K

4
Quell'esempio non è "il più semplice / minimale"
HorusKol

41

La soluzione più semplice è in realtà usare semplicemente il file builder ufficiale di Microsoft Browserconfig.xml: http://www.buildmypinnedsite.com

Puoi creare un file xml completo e ricevere tutte le immagini delle dimensioni del tuo logo in soli 3 passaggi. L'ho appena fatto per il mio sito e ci sono voluti solo 2 minuti.

Genererà un file browserconfig.xml completo e fornirà tutte le immagini titolate in un unico file zip.

Modifica 1/8/2015: ho appena trovato un'altra opzione: http://realfavicongenerator.net/

Il vantaggio di questo sito web è che genera il tuo browserconfig.xml E tutte le tue icone apple-touch- *, favicon ecc. Fondamentalmente un sito web unico per generare tutto una volta.


3
Questa è una buona soluzione ma non risponde realmente all'OP, poiché vogliono solo un segnaposto.
Rapina il

Ottimo, perfetto: facendo il lavoro molto bene e in modo completamente automatico, dopo puoi scaricare un pacchetto completo con tutti i file al suo interno. Grande.
johngrinder

Sfortunatamente nessuno dei due siti crea un file browserconfig.xml.
Peter

23

L'aggiunta di un metatag potrebbe o non potrebbe funzionare. Abbiamo aggiunto questo tag, ma ricevevamo sempre errori 404 per le browserconfig.xmlrichieste. Alla fine abbiamo deciso di fare un semplice xml.

Il nostro browserconfig.xmlaspetto è questo e fondamentalmente dice solo dove si trovano 4 immagini.

<?xml version="1.0" encoding="utf-8"?>
<browserconfig>
    <msapplication>
        <tile>
        <square70x70logo src="/mstile-70x70.png"/>
        <square150x150logo src="/mstile-150x150.png"/>
        <wide310x150logo src="/mstile-310x150.png"/>
        <square310x310logo src="/mstile-310x310.png"/>
        <TileColor>#8bc53f</TileColor>
        <TileImage src="/mstile-150x150.png" />
        </tile>
    </msapplication>
</browserconfig>

E inserisci questo nel tuo html:

<meta name="msapplication-config" content="/browserconfig.xml" />

E ora va bene


6

Potresti anche aggiungerlo al tuo HTML e impostare la configurazione su "nessuno" in questo modo:

<meta name="msapplication-TileColor" content=" #009900" />
<meta name="msapplication-square70x70logo" content="images/smalltile.png" />
<meta name="msapplication-square150x150logo" content="images/mediumtile.png" />
<meta name="msapplication-wide310x150logo" content="images/widetile.png" />
<meta name="msapplication-square310x310logo" content="images/largetile.png" />
<meta name="msapplication-config" content="none"/>

fonti:

http://samples.msdn.microsoft.com/iedevcenter/PinnedSites/scenario1.html https://msdn.microsoft.com/library/dn320426


6
L'aggiunta di tutti questi meta tag è probabilmente la soluzione peggiore, IMO. Se lo fai, stai inviando tutti quei dati a ogni visitatore del tuo sito, in ogni visualizzazione di pagina. Due vantaggi con browserconfig.xml sono: 1. gli unici che ottengono qualcosa sono le persone che eseguono un browser a cui importa e 2. il browser può memorizzare nella cache il file e non scaricarlo di nuovo.
Ciad

5

Esiste un terzo modo per evitare browserconfig.xmldi riempire i file di registro con errori 404. È possibile restituire un valore nullo (444) dal server e disattivare la registrazione solo per quella posizione. Questo è rilevante perché favicon.ico fa la stessa cosa ignorando i tag meta head e il browser che lo chiama (generando anche un 404). Il problema è più grande di questo solo file indesiderato.

Alla tua domanda specifica di prevenire errori 404 nei tuoi log su browser.xml - per NGINX, puoi creare un nuovo file /etc/nginx/snippets/e poi #includequel file nel tuo /etc/nginx/sites-available/example.orgfile all'interno del blocco del server.

Esempio: /etc/nginx/snippets/block-known-errors.confha il seguente contenuto:

location ~* /(favicon.ico|browserconfig.xml)$
   { access_log off; log_not_found off; return 444; }

Quindi nella tua configurazione /etc/nginx/sites-available/example.orgdovresti aggiungere:

include /etc/nginx/snippets/block-known-errors.conf;

Nota nella specifica della posizione in NGINX utilizza un'espressione regolare e non fa distinzione tra maiuscole e minuscole . E poiché è un locationdeve essere all'interno delle serverspecifiche.

In pratica, annidiamo effettivamente i nostri include nella /etc/nginx/snippets/cartella e abbiamo un include globale e altri include per siti specifici a seconda dei requisiti di sicurezza / tecnologia. Ciò consente ai nostri endpoint di risolvere un problema globale quasi immediatamente aggiungendo un file o modificando un file esistente per gestire i nostri log.

C'è solo così tanto cruft che puoi vedere con OSSEC e uno stack ELK.

Sono sicuro che anche mod_rewrite in Apache potrebbe fare questo.


Mi piace molto questa soluzione ma sono paranoico riguardo alla disattivazione della registrazione
Caleb
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.