Come aggiungere icone per pagina Web, non per sito Web per la visualizzazione Preferiti in Yosemite

2

Ho a che fare con questo pasticcio di icone nella vista Preferiti di OS X Yosemite Safari:

SinotiquantosiabelloefacileindividuarevisivamenteleiconeIPythoneAWS:mipiacerebbeavereiconesimilivisualizzateperimieialtrisitigo-topreferiti,lamaggiorpartedeiqualisonoospitatidavariesottodirectorydiunsingoloWebprivatoserver(chiamalo"foo.lan").

Si accede a IPython tramite l'indirizzo IP 10.0.3.3 per "foo.lan". L'ho fatto funzionare per IPython usando il metodo standard, ad esempio includendo quanto segue nell'intestazione HTML:

<link rel="apple-touch-icon" href=.../>
<meta name="apple-mobile-web-app-capable" content="yes" />

E quando ho studiato il motivo per cui ha funzionato, sembra che l'immagine sia memorizzata nella cache di Safari in ~ / Library / Safari / Touch Icons / come "92AE91400BBEF8B1D9854D7151202EED.png": "92 ..." è l'hash MD5 della stringa " 10.0.3.3 ", ovvero il dominio che sto utilizzando per accedere a IPython.

Il problema è che questo metodo di mappatura delle icone in pagine Web presuppone che ci sarà un'icona per sito Web, non un'icona per pagina web. Nel mio caso, ci sono più pagine web, accessibili da un sito web, ad esempio "foo.lan", per ognuna delle quali vorrei che un'icona separata venisse visualizzata nei Preferiti.

Ho provato a copiare manualmente un'icona in ... / Touch Icons, rinominandola con l'hash MD5 del percorso completo alla pagina web e modificando la cache plist di conseguenza: ovviamente questo lungo il colpo non ha funzionato.

C'è un modo per ingannare Safari nell'associare icone con pagine specifiche all'interno di un singolo sito, invece di una sola icona per sito? Mi chiedo se questo è semplicemente qualcosa che deve essere cambiato in Safari, in quanto iOS è perfettamente in grado di memorizzare nella cache le icone delle app Web e visualizzarle correttamente nella schermata principale. Una tale capacità di visualizzazione per OS X Safari sarebbe molto utile se non esiste già.

Una soluzione

L'utente "root" ha suggerito di aggiungere sottodomini mappati a ciascun "portale di servizio" in esecuzione sul sito web. Quindi commands.foo.lan, books.foo.lan e così via. Alcune semplici trucchi con l'aliasing DNS (nessun broswer di server web richiesto, fortunatamente) conferma che questo abilita le icone per pagina come desiderato (confermando ulteriormente la diagnosi del problema). Questo sembra un po 'come martellare un chiodo usando un cacciavite, però, e vorrei che ci fosse un modo più carino per ottenere questo comportamento.

Anche dopo aver riorganizzato tutti i tuoi DNS per abilitare questa funzione, tuttavia, devi ancora occuparti dell'estrema sfacciataggine di Safari che in realtà sta estraendo le immagini dal server web; questo è un problema che si riscontra anche negli imprevedibili guasti di Mobile Safari per la conservazione delle icone per le tue web app e la conseguente allegria nella diagnosi del problema. Fortunatamente in un ambiente iOS non (jailbroken-) è possibile forzare la questione saltando in CacheSettings.plist, individuando il record per il sito di cui si desidera modificare l'icona, impostando manualmente il valore booleano di TouchIconInCache su "SÌ" e quindi - attendi - calcola manualmente l'hash MD5 della stringa del tuo nome di dominio, cambiando il nome dell'icona in quell'hash e copiandolo nella cartella "Touch Icons" come segue:

Dopo aver completamente riorganizzato il DNS nella tua LAN e aver calcolato gli hash MD5 dei nomi di dominio per i quali Safari visualizza le icone, puoi finalmente accedere rapidamente alle icone per le tue pagine Web preferite, indipendentemente dal fatto che siano ospitate in modo separato o separato nello stesso dominio

    
posta bjsdaiyu 09.11.2014 - 15:33
fonte

0 risposte

Leggi altre domande sui tag