Jump to content

[RESOLU/SOLVED] Probleme Icon Font Awesome avec Smart Cache Actif


Recommended Posts

Bonjour a tous et Bonne Annee

 

 

Je suis en train de developper une boutique sous presta.

La boutique est presque acheve mais je butte encore sur 2 ou 3 trucs.

 

L'un d'eux concerne les polices d'icones (FontAwesome) que l'on a en standard dans /themes/montheme/font.

 

Le theme que j'utilise est une copie a peine modifie du default-bootstrap fourni avec presta 1.6.0.9.

 

Il se trouve que quand j'active "Smart cache" pour les feuilles de style dans "Paramètres avancés > Performance > CCC" celle-ci ne s'affiche plus et sont remplacees par un code hexa dans un petit carree.

 

J'ai fait plein de recherche mais je n'ai rien trouve. :(

 

 

De la meme maniere, si dans /config/defines_uri.inc.php, j'essai de modifier l'URL des css de mon themes, j'obtiens le meme resultat (et sans avoir active smartcache). Un carre avec code hexa.

 

ex:

define('_THEME_CSS_DIR_',                _THEME_DIR_.'css/');
devient:

define('_THEME_CSS_DIR_',                'http://csst.monsite.com._THEME_DIR_.css/');
 

Ca ne fonctionne pas pour les css mais pour les js, il n'y a aucun probleme..... c'est bizarre non? :blink:

 

ex:

define('_THEME_JS_DIR_',                 _THEME_DIR_.'js/');

devient:

define('_THEME_JS_DIR_',                 'http://jst.monsite.com._THEME_DIR_.js/');
 

 

Cordialement

Hugues

Edited by Akira34 (see edit history)
Link to comment
Share on other sites

Bonjour,

Je suis sûre que vous utilisez les icônes FontAwesome avec les cheatsheets ou avec les noms de class :D

 

J'ai résolu mon problème en utilisant les snippets, pour ma part (j'avais le même, le petit caré et le code héxa à côté). Par ici : http://astronautweb.co/snippet/font-awesome/

 

C'est vrai que c'est un peu caché, mais j'espère que cela vous aidera !

 

Bonne année,

Cordialement,

 

Okar

Link to comment
Share on other sites

Bonjour

 

 

Merci Okar :D

 

En fait je viens juste de trouver la solution...

C'est une erreur engendre par les navigateurs. Elle s'appelle le Cross Domain

Je ne saurai pas l'expliquer en details mais il semblerai que les browser comme IE ou fire fox n'accepte pas que l'on charge des polices a partir d'un autre site.

 

Cette erreur apparait dans presta 1.6 quand on utilise les serveurs de media (CDN):

http://support.metacdn.com/entries/27332267-Troubleshooting-Web-fonts-with-MetaCDN-CORS-setup

 

La solution pour resoudre le probleme:

 

En 1er, il faut verifier si le module Headers (mod_headers) est charge par Apache.

Si il est charge, vous trouverez mod_headers dans la section Configuration/apache2handler/loaded modules de votre phpinfo.

Si ce n'est pas le cas il faut le charge dans apache. Sur un mutu, demandez a votre hebergeur.

Sur un dedie avec apache2, en ligne de commande, il suffit de faire en etant loguer en root:

 

#cd /etc/apache2/mods-enabled

#:/etc/apache2/mods-enabled# ln -s ../mods-available/headers.load headers.load
#:/etc/apache2/mods-enabled# /etc/init.d/apache2 restart
Restarting web server: apache2 ... waiting ....
#:/etc/apache2/mods-enabled#

 

Une fois le module charger et le serveur redemarre, la 2eme etape est de modifier le .htaccess de presta.

 

ATTENTION, le .htaccess est genere automatiquement par presta.

Ne modifier pas ce qu'il y a entre:

# ~~start~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
# .htaccess automaticaly generated by PrestaShop e-commerce open-source solution
# http://www.prestashop.com - http://www.prestashop.com/forums

et:

# ~~end~~ Do not remove this comment, Prestashop will keep automatically the code outside this comment when .htaccess will be generated again
Ces modifications serai perdu a la prochaine regeneration

 

Il faut ajouter a la fin du .htaccess apres le "# ~~end~~ Do not remove this.....":

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin: *
</ifModule>

 

Vous pouvez eventuellement redemarrer le serveur si ca ne fonctionner pas:

#:/etc/apache2/mods-enabled# /etc/init.d/apache2 restart

 

Mais normalement ce n'est pas necessaire

 

Et voila, c'est tout :D

 

 

Cordialement

Hugues

  • Like 1
Link to comment
Share on other sites

Bonjour,

 

Hmm, il me semblait que le cross-domain, c'était le "croisement de domaine" (superbe traduction ^^), quand on tente de faire communiquer deux "sites" ensemble. Effectivement, quand on tente d'accéder à des ressources d'un autre domaine et que ce dernier ne veut pas, une erreur de cross-domain est lancée pour des questions de sécurité.

 

En effet, IE et FF renforcent leur sécurité sur le cross-domain (bien que IE ait été le premier à implémenter XHR niveau 2, niveau qui permet l'échange des données, avec firefox 3, même si c'était un bug de leur part).

 

De ce que je comprends du post, la solution configure le serveur pour qu'il ait les bonnes en-têtes pour permettre à tous les domaines de voir vos polices (approximativement, je crois que c'est ça ^^).

C'est une solution intéressante, je la garde sous le coude, au cas où !

 

Bonne continuation,

Cordialement,

 

Okar

Link to comment
Share on other sites

Salut

 

 

Je ne comprends pas bien les subtilitees de la solution mais effectivement c'est une histoire d'entete.

 

En gros, il faut que le serveur "dise" au navigateur que le site a le droit d'aller chercher des ressources sur d'autres serveur.

 

Voila

 

Cordialement

Hugues

Link to comment
Share on other sites

  • 3 weeks later...
  • 2 weeks later...
  • 6 months later...

I would like to share my experience: I had this problem and was fixed as described on version 1.6.0

 

After updating to 1.6.1 I had this problem again. I fixed it cancelling this fix from my .htaccess

 

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin: *
</ifModule>

 

I hope it can help and save time to someone else :-)

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour, même problème en passant en 1.6.1 mais je n'avais jamais appliqué le correctif décrit ci dessus. E désactivant smart cache cela fonctionne, mais c'est un peu con quand même de s'en priver! Une idée pour résoudre le souci?

Link to comment
Share on other sites

  • 2 weeks later...

Bonjour, même problème en passant en 1.6.1 mais je n'avais jamais appliqué le correctif décrit ci dessus. E désactivant smart cache cela fonctionne, mais c'est un peu con quand même de s'en priver! Une idée pour résoudre le souci?

 

Bonjour as tu trouver une solution depuis la mise à jour en 1.6.1 j'ai le soucis sur firefox 

Link to comment
Share on other sites

Salut

 

 

J'ai une petite bidouille qui me permet de faire fonctionner les font et le smart cache mais cest sans aucune garantie que ca fonctione sur vos sites.

 

 

je desactive tout d'abord tout ce qui est dans param.avances/performance/CCC.

Je vide ensuite tout les caches, y compris ceux du navigateur et ce des modules accelerateur.

Je supprime tous les fichiers temporaires et de cache.

 

Une fois que c'est fait, je vais sur ma page d'acceuil.

Dans param.avances/performance/CCC, je reactive tout sauf le smart cache

Je recharge ma page d'acceuil.

Je reactive smart cache

 

La plupart du temps tout fonctionne correctement apres ca

 

 

Cordialement

Hugues

 

PS: Je suis sur une version 1.6.1.1

Voilou, en esperant que ca pourra depanner quelques uns d'entre vous

Link to comment
Share on other sites

  • 2 years later...

Même souci depuis le passage à la version 1.6.1.20.

Seule la désactivation de "Smart cache" pour les feuilles de style (CSS) permet de contourner ce bug présent sur mon installation non modifiée de Presta incluant le Theme d'origine.

Concernant l'astuce de AKIRA, malheureusement cette option est déjà dans mon .htaccess et le mod bien activé dans apache.
<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin: *
</ifModule>

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...