Jump to content

[Résolu] Serveurs de média - CDN - CCC - Comment paramétrer ?


Recommended Posts

Bonjour,

Je souhaite utiliser et comprendre le fonctionnement du paramétrage de "Serveurs de média" dans le BO de Prestashop.
Le site est installé sur un unique serveur, je pense donc créer des alias dans apache afin d'avoir en plus du www, 3 autres sous domaines cdn1, cdn2 et cdn3 par exemple pour les paramétrer dans le BO.

1. Cependant, pourriez-vous m'expliquer l'intérêt d'un tel fonctionnement en plusieurs sous domaines ?

2. Y-a-t-il un réel avantage à utiliser des sous domaine si physiquement il n'y a qu'un seul serveur ?

3. D'autre part, s'il y a 4 sous domaines pointant vers le même répertoire racine, n'y a-t-il pas un risque de référencement par Google de ces 4 sous domaines ? Et donc du duplicate content ?
Y a-t-il pour ce point des actions à réaliser tel que préciser certains droits d'accès dans le htaccess par exemple ?

4. Une autre question aussi : comment se fait la répartition des média entre ses 3 nouveaux sous-domaines ? Quelle est la règle, est-ce par exemple les js qui sont sur un 1er sous domaines, les images produit sur le second, les images du template sur le 3ème ? Ou est-ce aléatoire ?

Merci pour vos précieuses explications/conseils dans ce domaine de l'optimisation du site.


EDIT 07-04-2011
Recap:
serveur de media :
utiliser 3 cdn pointant vers votre boutique (en general www)
les médias seront répartis équitablement sur ces 3 cdn
utiliser une url canonique pour éviter la duplication de contenu (mauvais pour la seo)
utilisez dans votre htaccess une mise en cache suffisante des fichiers type images, css et autres

42174_0pXGPdsGf4YXvhj2bP5N_t

Link to comment
Share on other sites

Bonjour Jovicyr,
oui il y a un réel intéret à utiliser des cdn,
on y gagne en temps de chargement grâce au chargement parallele des données.
J'utilise cette technique pour beaucoup de mes sites et le résultat est flagrant.
(utilise pagespeed pour t'en rendre compte par exemple)

Il faut en général utiliser 3 cdn max, il n'y a pas de régle officiel je crois, pour ma part, c'est plus une répartition égale des ressources (par exemple, 30 fichiers sur chaque cdn par page. Ou répartir 300k de chargement sur les 3 cdn, donc 100k chacun) et souvent on mettra sur un : les fichier d'uploads du site, sur l'autre, les css et images et le dernier avec les js (je te conseille également d'utiliser des cdn comme ceux de jquery ou google.

Pour ton htaccess, tu peux le configurer de manière à mettre une expiration des headers ainsi qu'une mise en cache forte (selon tes besoins); protège la lecture du répertoire pour la protection. Un client dernièrement s'est étonné de cette etrange url commencant par cdn... mais je n'ai eu qu'une seule remarque à ce sujet...
Je ne vois pas pourquoi il y aurait de la duplication de contenu par ailleurs...mais oui tes images si elles sont referencés, le seront sur ce cdn...mais tout le monde utilise cette technique (facebook, youtube, etc...)

Link to comment
Share on other sites

Merci pour ta réponse moabi.
Tu aurais un petit tuto pour gérer les sous-domaines ? J'avoue que je n'y arrive point...
J'ai créé via mon manager OVH 3 sous-domaines img2.autourdumonde.biz, css.autourdumonde.biz et js.autourdumonde.biz (enfin 6, puisqu'il me les crée aussi en www.
Les 3 sous-domaines pointent sur www/

Link to comment
Share on other sites

Bonjour LeGhe,
sur OVH, ne crée pas les sous domaine en www, et fait pointer directement sur ton dossier que tu mets dans la racine
(eg: cdn)
attention aux js sur les cdn, selon leur rôle cela peut avoir un impact négatif sur le site (donc bien tester avant...)

Link to comment
Share on other sites

Bonjour Moabi, merci également ton ta réponse.
Je souhaiterais effectivement davantage d'information pratique sur cette mise en place de cdn.
Comme LeGhe, j'ai créé mes 3 cdn et ils pointent vers le même répertoire que www.
Comment décides-tu que le premier sera utilisé pour telles images, le second pour les js, etc. ? Ne faudrait-il pas dans ce cas, créer un répertoire spécifique qui contienne les images, un autre pour les js, et faire pointer ainsi les sous domaines vers ces répertoires au lieu de www comme c'est actuellement fait chez moi ?

Ainsi on aurais :
www > contient le contenu de prestashop
img > contient les images produit par exemple aevc la même arboressence que celle de Prestashop, mais uniquement ces fichiers images, pas le reste
js > idem img mais avec uniquement que les js

Cependant dans ce cas, l'organisation et la maintenance du code me semble compliquée.

En d'autres termes, comment fais-tu concrètement ;-) ?

Merci de tes précisions,

Link to comment
Share on other sites

@Jovicyr
oui c'est tout a fait ça,
l'organisation n'est pas plus complexe, tu as 4 dossiers sur ton serveur et gère tes fichiers comme à l'habitude, pour simplifier, mets les img liées au js dans le même sous-domaines, et la css et ses img dans le même cdn, ensuite un dernier cdn des uploads des images de ta boutique (images des produits) et enfin www avec ton site dedans...quand on l'a fait une fois, le process est vraiment simple...
par exemple pour le css, fait pointer ta css dans ton header vers le cdn (http://cdn.monsite.com/style.css) et le tour est joué...

Link to comment
Share on other sites

@Jovicyr
par exemple pour le css, fait pointer ta css dans ton header vers le cdn (http://cdn.monsite.com/style.css) et le tour est joué...


Alors là, je pige pas. ça veut dire qu'il faut manuellement aller modifier la balise d'inclusion de la css dans le template ?
Mais à ce moment là, si l'on fait cette déclaration en dur, à quoi sert l'interface proposée par Prestashop dans son BO pour la gestion des CDN (voir capture d'écran dans mon premier post) ?

Et donc pour les images produit, pour qu'il trouve bien la bonne adresse, cela implique d'aller modifier sur le tpl de la page produit l'url de l'image ?
Link to comment
Share on other sites

et sinon, y'a le guide hein !
http://www.prestashop.com/download/Techguide_fr.pdf
p25

bon dev...


A ben voilà, fallait commencer par ça ! ;-)

Répartissez vos éléments statiques sur des sous-domaines différents afin de paralléliser les flux HTTP des
visiteurs.
Pour cela, il faut vous rendre dans le fichier config/defines.inc.php et ajouter ceci :

if ($_SERVER['REMOTE_ADDR'] != '127.0.0.1')
{
define('_THEME_IMG_DIR_', 'http://img2.xxx.com/');
define('_THEME_CSS_DIR_', 'http://css.xxx.com/');
define('_THEME_JS_DIR_', 'http://js.xxx.com/');
define('_THEME_CAT_DIR_', 'http://img1.xxx.com/c/');
define('_THEME_PROD_DIR_', 'http://img1.xxx.com/p/');
define('_THEME_MANU_DIR_', 'http://img1.xxx.com/m/');
define('_PS_IMG_', 'http://img1.xxx.com/');
define('_PS_ADMIN_IMG_', 'http://img1.xxx.com/admin/');
}
else
{
define('_THEME_IMG_DIR_', _THEMES_DIR_._THEME_NAME_.'/img/');
define('_THEME_CSS_DIR_', _THEMES_DIR_._THEME_NAME_.'/css/');
define('_THEME_JS_DIR_', _THEMES_DIR_._THEME_NAME_.'/js/');
define('_THEME_CAT_DIR_', __PS_BASE_URI__.'img/c/');
define('_THEME_PROD_DIR_', __PS_BASE_URI__.'img/p/');
define('_THEME_MANU_DIR_', __PS_BASE_URI__.'img/m/');
define('_PS_IMG_', __PS_BASE_URI__.'img/');
define('_PS_ADMIN_IMG_', _PS_IMG_.'admin/');
}

Link to comment
Share on other sites

Cependant, je ne comprends toujours pas l'utilité de la fonctionnalité en BO mentionnée plus haut. En effet, comme précisé dans la documentation, il s'agit de spécifier "en dur" (dans le sens où l'on modifie un fichier php) les url des cdn. Or dans le BO, il existe 3 champs permettant de spécifier dynamiquement (= différent de "en dur") ces serveurs de médias.
Dommage que personne de la team n'apporte son regard sur ce sujet.

Link to comment
Share on other sites

@Jovicyr
pour la fonctionnalité du BO, cela te permet d'indiquer le chemin pour tes fichiers d'upload, ainsi les images de tes produits seront chargés sur le cdn (attention, faire le transfert des images auparavant, sinon ca va trancher !)

après c'est vrai que je n'ai pas vu de détail sur le fonctionnement, pourquoi il y en a 3, comment cela est géré, etc...
je suis preneur d'info pour cela

Link to comment
Share on other sites

Bon ben je dois être un peu neuneu alors...

Test sur le CSS :

OVH : css.autourdumonde.biz qui pointe sur /www/themes/prestashop/css
On peut le voir ici : http://css.autourdumonde.biz/

defines.inc.php :
define('_THEME_CSS_DIR_', 'http://css.autourdumonde.biz/');

Résultat en Front Office :
Des images produits qui "sautent" (mais pas toutes !), avec comme url : http://css.autourdumonde.biz/13736-1043-home/je-disais-que-je-resterais-pas.png

et un code source :

<link href="http://css.autourdumonde.biz/global.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/blockviewed/blockviewed.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/blockcart/blockcart.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/editorial/editorial.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/blockmanufacturer/blockmanufacturer.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/blocksupplier/blocksupplier.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/blockcms/blockcms.css" rel="stylesheet" type="text/css" media="all" />
<link href="http://css.autourdumonde.biz/product_list.css" rel="stylesheet" type="text/css" media="all" />
<link href="/themes/prestashop/css/modules/blocksearch/blocksearch.css" rel="stylesheet" type="text/css" media="all" />



Je ne comprends pas tout...

Link to comment
Share on other sites

D'après ton dernier message, cela indique tout simplement que la gestion de CCC n'est pas encore étendue aux modules, même ceux fournis en standard dans Prestashop

Pour la "destination" de css.autourdumonde.biz, est ce normal que ca pointe vers /www/themes/prestashop/css et pas /www/themes/prestashop/img ?

Link to comment
Share on other sites

la gestion de CCC n’est pas encore étendue aux modules

Je n'ai pas activé le CCC

Pour la “destination” de css.autourdumonde.biz, est ce normal que ca pointe vers /www/themes/prestashop/css et pas /www/themes/prestashop/img ?

Ben le CSS est dans /www/themes/prestashop/css non ?
Link to comment
Share on other sites

De ce que je comprends il existe deux opérations possibles au niveau de ces serveurs de médias :

- Si on rajoute des URL dans la partie "Serveurs de médias", Prestashop jonglera entre ces URL pour servir les images, etc (mais les 3 domaines doivent pointer vers le même répertoire du serveur, c'est à dire le même que la boutique)

- Parallèlement, via defines.php (comme expliqué dans la doc PDF), on peut "forcer" des URL à utiliser pour chaque type de média (mais comme l'indique l'exemple, tous ces domaines doivent, si on les consulte, afficher la racine de la boutique)

Link to comment
Share on other sites

la gestion de CCC n’est pas encore étendue aux modules

Je n'ai pas activé le CCC


J'ai l'impression que l'on est sur 2 techniques différentes. Celle que je mentionnais au tout début de cette discussion est la méthode via la fonctionnalité proposée en BO. Or cette fonctionnalité n'est appremment opérationnelle uniquement que si tu actives CCC :
Serveurs de média (utilisé uniquement lorsque CCC est activé)


Et je pense que cette histoire de modifier manuellement le fichier de conf comme indiqué dans la documentation doit certainement être la méthode "ancienne", celle permettant de mettre en place des CDN lorsque la version 1.4 de PS n'existait pas encore.

Ainsi je pense comprendre qu'avec la version 1.4, en fait c'est tout simple : il suffit d'avoir les sous domaines créés dans apache et tout simplement les utiliser via la fonctionnalité cité ci-dessus. Rien à modifier dans le code, aucun répertoire à créer spécifiquement pour tel ou tel type de média.

En effet, lorsque je fais ainsi, j'ai bien en FO des images qui viennent de cdn1.monsite.fr d'autres de cdn2, etc.

Quelqu'un peu confirmer cela ?

Le truc c'est qu'on ne semble pas avoir la maîtrise de la répartition des types de fichiers sur tel ou tel cdn.

Et ma question, c'est que si c'est le cas, cela veut dire que sur www ou cdn1 ou cdn2 ou cdn3, j'aurais finalement d'accessible le site entier au final. Comment faire alors pour faire comprendre à google qu'il ne faut indexer uniquement que www et non les cdnX afin d'éviter la duplication de contenu ?
Link to comment
Share on other sites

"Et ma question, c’est que si c’est le cas, cela veut dire que sur www ou cdn1 ou cdn2 ou cdn3, j’aurais finalement d’accessible le site entier au final. Comment faire alors pour faire comprendre à google qu’il ne faut indexer uniquement que www et non les cdnX afin d‘éviter la duplication de contenu ?


Logiquement, si seuls les médias sont reliés à ces serveurs "secondaires", Google ne référencera pas les autres serveurs (enfin pas leur contenu "textuel"). (à vérifier)
Link to comment
Share on other sites

"Et ma question, c’est que si c’est le cas, cela veut dire que sur www ou cdn1 ou cdn2 ou cdn3, j’aurais finalement d’accessible le site entier au final. Comment faire alors pour faire comprendre à google qu’il ne faut indexer uniquement que www et non les cdnX afin d‘éviter la duplication de contenu ?"

Logiquement, si seuls les médias sont reliés à ces serveurs "secondaires", Google ne référencera pas les autres serveurs (enfin pas leur contenu "textuel"). (à vérifier)


Prenons un exemple concret :
Cette présente page est accessible via l'url
http://www.prestashop.com/forums/viewthread/101397/P15/#419267

Si vous regardez où es stocké le logo de prestashop tout en haut, son url est :
http://www.prestashop2.com/images/en/logo-prestashop.png

Et si vous rajoutez le "2" dans l'url de ce post, ben on a bien le forum accessible lui aussi via www.prestashop2.com

http://www.prestashop2.com/forums/viewthread/101397/P15/#419267

Comme supposé dans le post précédent, Google n'ira pas indexer www.prestashop2.com puisqu'il n'y a pas de lien vers les pages s'y trouvant.

... sauf que là, dans ce présent post, je fais un tel lien... google va peut être le suivre, non ? Comment lui indiquer alors que c'est pas à référencer ?
Link to comment
Share on other sites

On peut le faire facilement via htaccess (ou même faire une redirection 301 si une page HTML est appelée, mais après je ne sais pas si ca interfère avec CCC).

Il existe aussi le module "URL canonique" qui permettra d'indiquer l'URL réelle.

Link to comment
Share on other sites

Dès que j'active le CCC, mes fichiers cache CSS et JS passent en https, ce qui ralentit plus le temps de chargement que si je laisse CCC désactivé, et provoque des alertes sur les images chargées via https://img2 (certificat non valide), et les images ne s'affichent quand même pas...

Je lâche l'affaire, c'est soit pas très au point ce bazar, soit qu'il manque une {~#{#|[ de doc !

Link to comment
Share on other sites

Que les CSS et JS passent en HTTPS, c'est normal, si quand tu surfes en HTTPS, tu affiches une "ressource non sécurisée", ton navigateur se fera un plaisir de te le signaler (ce qui fait très mauvais effet sur les visiteurs).

Pour le certificat non valide sur https://img2, c'est sans doute normal (surtout si c'est sur un domaine différent donc certificat non valide)

Link to comment
Share on other sites

- define.inc.php laissé tel qu'à l'original
- CCC sur CSS et JS activé
- css.autourdumonde.biz en serveur média 1 et c'est tout

et voilà le résultat :
http://www.webpagetest.org/result/110407_WW_BJCF/1/details/

->
https://css.autourdumonde.biz/themes/prestashop/cache/f9ee5906e228cbf80463149deda7a174.js ???
https://img2.autourdumonde.biz/themes/prestashop/img/spriteme1.png : alerte sur certificat invalide : d'où vient ce img2 ???
http://css.autourdumonde.biz/15981-3088-home/en-voyage.png ???

Et j'en passe...

Link to comment
Share on other sites

oui (enfin c'est pas un match hein !)
la vraie question est (je crois) comment fonctionne en BO les 3 serveurs de medias...leur logique, etc...
quand je mets un cdn (sans toucher au fichier defines) je m'apercois qu'il y a des medias qui partent vers le cdn, (mais également des médias liés à des modules...)
mais quand j'upload des images, celles ci ne partent pas vers le cdn en question..

Link to comment
Share on other sites

Quand tu parles d'images uploadées, c'est par exemple une image d'un produit ?

Et de toute facon ton CDN pointe vers le répertoire physique de ta boutique non?

(mon objectif n'est pas ici de défendre une bonne ou mauvaise pratique, j'essaie juste de comprendre le point de blocage :)

Link to comment
Share on other sites

On ne peut pas combiner des appels en http:// et https:// sur une page https://

+1 :)
certes, mais on est pas constamment en https sur le catalogue non ? donc les fichiers seront déjà en cache, non ?


C'est à dire "en cache"? dans le navigateur? oui mais ils sont en cache pour l'URL en http, pas celle en HTTPS :)
Link to comment
Share on other sites

oui une image de produit,
je pensais à priori que si on indiquait un cdn, quelque soit le repertoire, les uploads de nouvelles img se feraient par la...mais à priori non...
pareil, on aurait sans doute besoin d'un modérateur pour éclaircir le fonctionnement je pense...

Link to comment
Share on other sites

Je crois qu'une précision s'impose :

Quand on parle ici de CDN, il s'agit juste d'un nom de domaine genre toto.titi.fr qui pointe physiquement vers www.titi.fr : les contenus des deux "sites" sont identiques, vu que c'est le même répertoire physique.

En conséquence, si j'uploade une image sur www.titi.fr, elle sera disponible dans la milliseconde sur toto.titi.fr, vu que ce sont juste deux adresses différentes pour le même contenu unique.

Link to comment
Share on other sites

ok,
en tous les cas, elle n'est pas dispo sur le cdn...ou alors il faut tester avec un cdn pointant vers le dossier d'upload, mais ceci dit, si l'appel se fait sur www.monsite et pas sur cdn.monsite ca sert pas à grand chose

Link to comment
Share on other sites

j'ai enregistré un cdn dans le BO:
cdn.monsite
quand j'ouvre mon site, je m'apercois qu'il y a 5 fichiers qui pointent maintenant vers ce cdn (je n'ai pas d'idée de la logique du choix de ces fichiers)

si j'essayer d'uploader une img produit, je pourrais penser qu'elle va aller se caler dans le cdn (comme je fais dans d'autres cms),
mais non, elle reste sur le www.monsite

bref, j'ai du mal à comprendre si on doit éditer le fichier defines ET le BO
ou alors c'est une indication obsoléte...
arf

Link to comment
Share on other sites

Mais ton CDN consiste en quoi ? un autre domaine pointant vers un répertoire sur le serveur qui n'est pas le même que celui vers lequel pointe le site classique ?

Un exemple :
- URL du site classique : www.domaine.fr, qui pointe vers /www/boutique/
- URL du CDN : cdn.domaine.fr, qui pointe vers le même /www/boutique/

Attention, j'insiste bien que les deux domaines doivent pointer vers le même dossier.

Si tu pointes sur deux hébergements séparés, les fichiers ne vont pas se copier tous seuls :) (ce n'est pas le but de la fonctionnalité "serveurs de médias" de Prestashop)

Link to comment
Share on other sites

ok Samy_R, je te suis bien,

j'ai testé l'ensemble en utilisant 3 cdn,
en effet, prestashop utilise le serveur de media en repartissant les medias sur ces 3 urls,
il faut donc les faire pointer sur le domaine principale

(my bad...)

Link to comment
Share on other sites

C'est exactement ça :)

Ce dispositif permet également de désactiver la gestion des cookies sur blabla.monsite.fr tout en la gardant activée sur www.monsite.fr : cela accélère légèrement la navigation et le chargement de la boutique (et de gérer plus finement les délais d'expiration, etc)

Link to comment
Share on other sites

à noter qu'effectivement il vaut mieux utiliser une balise meta d'url canonique pour éviter la duplication de contenu
(je crois que j'ai bien embrumé le forum, desolé je viens de cms voisins ou les pratiques et coutumes sont differentes ^^)

Recap:

serveur de media :
utiliser 3 cdn pointant vers votre boutique (en general www)
les médias seront répartis équitablement sur ces 3 cdn
utiliser une url canonique pour éviter la duplication de contenu (mauvais pour la seo)
utilisez dans votre votre htaccess une mise en cache suffisante des fichiers type images, css et autres

Merci à tous pour vos contributions

Link to comment
Share on other sites

Alors pour finir, je n'ai rien mis en CCC et j'ai mis mes 3 sous-domaines, pointant vers www dans les 3 champs serveur de média. la distribution vers les CDN me paraît complètement aléatoire.
cela donne ceci sur une page produit, MAIS MA PAGE D'ACCUEIL EST BLANCHE (POURQUOI TANT DE HAINE ???) :
FAILED - http://css.autourdumonde.biz/17889-4897-large/les-maasai.png
FAILED - http://img2.autourdumonde.biz/17889-4897-medium/les-maasai.png
FAILED - http://js.autourdumonde.biz//img/logo.png
FAILED - http://js.autourdumonde.biz//img/banner.gif
FAILED - http://js.autourdumonde.biz//img/logo2.png
FAILED - http://js.autourdumonde.biz//img/favicon.ico?1302190033
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/product.css
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/modules/blocksearch/blocksearch.css
FAILED - http://www.autourdumonde.biz/js/tools.js
FAILED - http://www.autourdumonde.biz/js/jquery/jquery.easing.1.3.js
FAILED - http://www.autourdumonde.biz/js/jquery/jquery.fancybox-1.3.4.js
FAILED - http://www.autourdumonde.biz/js/jquery/jquery.idTabs.modified.js
FAILED - http://www.autourdumonde.biz/js/jquery/jquery.scrollTo-1.4.2-min.js
FAILED - http://www.autourdumonde.biz/js/jquery/jquery.serialScroll-1.2.2-min.js
FAILED - http://www.autourdumonde.biz/themes/prestashop/js/tools.js
FAILED - http://www.autourdumonde.biz/themes/prestashop/js/product.js
FAILED - http://www.autourdumonde.biz/modules/blockcart/ajax-cart.js
FAILED - http://www.autourdumonde.biz/modules/blockcategoriestopsc/js/jquery.droppy.js
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/spriteme1.png
FAILED - http://www.autourdumonde.biz/img/YD.jpg
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/global.css
FAILED - http://www.autourdumonde.biz/img/redbutton.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/button-medium.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/spriteme2.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/block_bg.png
FAILED - http://www.autourdumonde.biz/modules/loyalty/loyalty.gif
FAILED - http://www.autourdumonde.biz/modules/productcomments/js/jquery.rating.pack.js
FAILED - http://www.autourdumonde.biz/css/jquery.fancybox-1.3.4.css
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/product-buy-bg.gif
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/button-medium_exclusive.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/product-short-desc-bg.gif
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/title_bg.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/tab_bg_short.jpg
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/form_bg.jpg
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/modules/blockviewed/blockviewed.css
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/button-large.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/icon/sort_desc_white.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/block_exclusive_bg.png
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/button-small.png
FAILED - http://www.autourdumonde.biz/js/jquery/fancybox/fancybox.png
FAILED - http://www.autourdumonde.biz/js/jquery/fancybox/blank.gif
FAILED - http://www.autourdumonde.biz/themes/prestashop/img/tab_bg_selected_short.jpg
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/modules/blockcart/blockcart.css
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/modules/editorial/editorial.css
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/modules/blockcms/blockcms.css
FAILED - http://www.autourdumonde.biz/themes/prestashop/css/product_list.css

Link to comment
Share on other sites

Oui, tout fonctionne (bien qu'il y ait relativement peu de fichiers utilisant les CDN, je trouve).
J'ai juste de gros problèmes avec ma page d'accueil depuis, qui 9 x sur 10 est blanche... (debug en on ne dit rien...)

Link to comment
Share on other sites

2 points : as-tu manuellement supprimer le contenu des rep :
tools/smarty/cache
tools/smarty/compile
(en prenant garde à laisser le index.php)

Et autre chose, les 3 serveurs de média à configurer dans le BO, ben j'ai l'impression (je sais pas le pourquoi du comment) mais que ça n'est utilisé uniquement QUE si CCC est activé comme l'indique le titre de ce paramétrage :
"Serveurs de média (utilisé uniquement lorsque CCC est activé"

Donc si tu dis utiliser les cdn mais ne pas avoir activé CCC, alors il y a des chances que ça ne fonctionne pas comme espéré.

Link to comment
Share on other sites

  • 1 month later...
Comme ça ? (cf image)
Et ensuite, dans l'onglet performances de PS, je rajoute les 3 url : img2.autourdumonde.biz, etc ?
Je dois toucher au fichier defines.inc.php aussi ou pas ?

Merci de ton aide !


T'as trouvé la bonne méthode finalement ?
Link to comment
Share on other sites

et sinon, y'a le guide hein !
http://www.prestashop.com/download/Techguide_fr.pdf
p25

bon dev...


A ben voilà, fallait commencer par ça ! ;-)

Répartissez vos éléments statiques sur des sous-domaines différents afin de paralléliser les flux HTTP des
visiteurs.
Pour cela, il faut vous rendre dans le fichier config/defines.inc.php et ajouter ceci :

if ($_SERVER['REMOTE_ADDR'] != '127.0.0.1')
{
define('_THEME_IMG_DIR_', 'http://img2.xxx.com/');
define('_THEME_CSS_DIR_', 'http://css.xxx.com/');
define('_THEME_JS_DIR_', 'http://js.xxx.com/');
define('_THEME_CAT_DIR_', 'http://img1.xxx.com/c/');
define('_THEME_PROD_DIR_', 'http://img1.xxx.com/p/');
define('_THEME_MANU_DIR_', 'http://img1.xxx.com/m/');
define('_PS_IMG_', 'http://img1.xxx.com/');
define('_PS_ADMIN_IMG_', 'http://img1.xxx.com/admin/');
}
else
{
define('_THEME_IMG_DIR_', _THEMES_DIR_._THEME_NAME_.'/img/');
define('_THEME_CSS_DIR_', _THEMES_DIR_._THEME_NAME_.'/css/');
define('_THEME_JS_DIR_', _THEMES_DIR_._THEME_NAME_.'/js/');
define('_THEME_CAT_DIR_', __PS_BASE_URI__.'img/c/');
define('_THEME_PROD_DIR_', __PS_BASE_URI__.'img/p/');
define('_THEME_MANU_DIR_', __PS_BASE_URI__.'img/m/');
define('_PS_IMG_', __PS_BASE_URI__.'img/');
define('_PS_ADMIN_IMG_', _PS_IMG_.'admin/');
}



Pourquoi mettre un "if" et pas tout changer directement sans conditions ?
Link to comment
Share on other sites

Créer sous domaine : oui, autant que tu en souhaite, en fait jusqu'à 3 acceptés par PS
Dossier destination : le même que celui contenant ton code PS
Chmod : pas de modif
IPV6 : non.


Merci et ou placer le:

if ($_SERVER['REMOTE_ADDR'] != '127.0.0.1')
{
define('_THEME_IMG_DIR_', 'http://img2.xxx.com/');
define('_THEME_CSS_DIR_', 'http://css.xxx.com/');
define('_THEME_JS_DIR_', 'http://js.xxx.com/');
define('_THEME_CAT_DIR_', 'http://img1.xxx.com/c/');
define('_THEME_PROD_DIR_', 'http://img1.xxx.com/p/');
define('_THEME_MANU_DIR_', 'http://img1.xxx.com/m/');
define('_PS_IMG_', 'http://img1.xxx.com/');
define('_PS_ADMIN_IMG_', 'http://img1.xxx.com/admin/');
}
else
{
define('_THEME_IMG_DIR_', _THEMES_DIR_._THEME_NAME_.'/img/');
define('_THEME_CSS_DIR_', _THEMES_DIR_._THEME_NAME_.'/css/');
define('_THEME_JS_DIR_', _THEMES_DIR_._THEME_NAME_.'/js/');
define('_THEME_CAT_DIR_', __PS_BASE_URI__.'img/c/');
define('_THEME_PROD_DIR_', __PS_BASE_URI__.'img/p/');
define('_THEME_MANU_DIR_', __PS_BASE_URI__.'img/m/');
define('_PS_IMG_', __PS_BASE_URI__.'img/');
define('_PS_ADMIN_IMG_', _PS_IMG_.'admin/');
} 



A la fin ?
Enfin tout faire pointer vers le repertoire d'install de la boutique même pour les sous dossiers de sous domaines a savoir par exemple: http://img1.xxx.com/p/ ???
Comment créer t'on ce genre de sous domaine ?

Link to comment
Share on other sites

Merci de ne pas poster deux sujets portant sur la même problématique. (pour le sous domaine, merci de vous référer à la documentation de votre hébergeur).


Je suis juste les fils de conversations...
Link to comment
Share on other sites

Alala, j'ai hâte de la voir cette boutique supra-optimisée en tout cas :)
Mais bon, un mutualisé OVH reste un mutualisé, si tu as du trafic sur ton site, commence plutôt par la.


Merci pour vos réponses ^^ j'aimerai passer en 1.4 je vous jure mais 2 mois de developpement en 1.3 c'est pas pour tout mettre en l'air avec un changement de version ^^
Link to comment
Share on other sites

Alala, j'ai hâte de la voir cette boutique supra-optimisée en tout cas :)
Mais bon, un mutualisé OVH reste un mutualisé, si tu as du trafic sur ton site, commence plutôt par la.


Merci pour vos réponses ^^ j'aimerai passer en 1.4 je vous jure mais 2 mois de developpement en 1.3 c'est pas pour tout mettre en l'air avec un changement de version ^^


De toute façon les montées de version, tu les testes toujours en local avant :)
Link to comment
Share on other sites

Voici mes sous domaines chez OVH, je n'ai rien touché en defines et .init, comment faire les bonne redirections ?

Nadine

css.monsite.fr pointe vers /www
img.monsite.fr pointe vers /www
img1.monsite.fr pointe vers /www/img/c
img2.monsite.fr pointe vers /www/img/p
img3.monsite.fr pointe vers /www/img/m
img4.monsite.fr pointe vers /www/img/admin
js.monsite.fr pointe vers /www

Link to comment
Share on other sites

Je ne comprends pas ta question. Maintenant que tu as créé tes sous domaines, ben tu les insères dans le code indiqué plus haut dans cette discussion.


Le soucis c'est que l'on peut accéder à monsite.fr par l'adresse css.monsite.fr ou img.monsite.fr
Ca tue tout pour le référencement non ?
Link to comment
Share on other sites

Faut-il donc créer des redirections pour éviter le duplicate content ?
Par ce qu'avec cette méthode, certes je peux charger mes images plus vite mais vu que j'ai 36 pointages de sous domaine vers la même adresse, c'est mal vu non ?

Link to comment
Share on other sites

Ah ben voilà une question concrète ;-)
C'était d'ailleurs exactement le sens de ma question tout au début de cette discussion ;-)

J'avais d'ailleurs inséré le résumer dans mon premier post. Pour éviter le duplicate content, il faut utiliser les urls canonique. Ainsi, google comprendra que l'a page accessible via cdn2.tonsite.com n'est pas l'url principale et qu'il ne faut donc pas l'indexer.
Pour cela, rdv dans ton BO > Préférences > SEO > tout en bas, renseigner le champs Nom de domaine (utilisé pour l'url canonique).
Et mettre à "oui" : Rediriger automatiquement vers l'url canonique

Comme ça, tu verras que si tu accède à img1.tonsite.fr, ben ça redirigera vers www.tonsite.fr

Link to comment
Share on other sites

Ah ben voilà une question concrète ;-)
C'était d'ailleurs exactement le sens de ma question tout au début de cette discussion ;-)

J'avais d'ailleurs inséré le résumer dans mon premier post. Pour éviter le duplicate content, il faut utiliser les urls canonique. Ainsi, google comprendra que l'a page accessible via cdn2.tonsite.com n'est pas l'url principale et qu'il ne faut donc pas l'indexer.
Pour cela, rdv dans ton BO > Préférences > SEO > tout en bas, renseigner le champs Nom de domaine (utilisé pour l'url canonique).
Et mettre à "oui" : Rediriger automatiquement vers l'url canonique

Comme ça, tu verras que si tu accède à img1.tonsite.fr, ben ça redirigera vers www.tonsite.fr


Welcome je suis en 1.3.1 et je n'ai pas l'option SEO...comment faire cela à la main via htacess ?
Link to comment
Share on other sites

Et puis comment configurer prestashop pour lui dire que le bon dossier image est en img.monsite.fr et plus en monsite.fr/img ?
C'est lequel le fichier a configurer car bon au final ca discute, ca discute mais j'obtiens que des PM avec des gens qui cherche a faire de l'argent et qui ne propose rien de gratuit sur le forum !

Link to comment
Share on other sites

Et puis comment configurer prestashop pour lui dire que le bon dossier image est en img.monsite.fr et plus en monsite.fr/img ?
C'est lequel le fichier a configurer car bon au final ca discute, ca discute mais j'obtiens que des PM avec des gens qui cherche a faire de l'argent et qui ne propose rien de gratuit sur le forum !


Disons que l'entraide, c'est bien, mais on peut pas tout te fournir gratuitement en passant des heures à t'expliquer les moindre détails. A mon sens, ce post contient déjà toutes les réponses à tes questions. La moindre des choses à faire, serait que tu prennes le temps de relire depuis le début. Tu ne sais pas quel est le fichier à modifié ? Ben c'est marqué dans la doc ET dans l'un des post que tu avais d'ailleurs cité.

Doc : http://www.prestashop.com/download/Techguide_fr.pdf bas de la page 25 / haut de la page 26.

Après, il est possible qu'il y ait des zones d'ombre; dans ce cas là, n'hésite pas à poser tes questions... mais avec le maximum de précision sur ce que tu recherche comme réponse.
Link to comment
Share on other sites

Bon mes questions -> est ce que mon pointage de sous domaine est le bon ou alors faut il faire pointer chaque sous domaine vers le repertoire de destination ?
Exemple: faut il faire img.monsite.fr vers /www/ ou img.monsite.fr vers monsite.fr/img .... ????
Faut-il créer des redirections 301 pour chaque SSdomaine et si oui vers quoi doivent elles pointer ?
Quel fichier config configuré pour que pointage image se fasse vers les ss domaines ?
Faut il tout regénérer en images ?

Link to comment
Share on other sites

Bon ma question -> est ce que mon pointage de sous domaine est le bon ou alors faut il faire pointer chaque sous domaine vers le repertoire de destination ?
Exemple: faut il faire img.monsite.fr vers /www/ ou img.monsite.fr vers monsite.fr/img .... ????


Il faut faire img.monsite.fr vers /www/
donc ta config est bonne. A toi de paramétrer correctement ensuite le fichier indiqué dans la doc page 25.


Faut-il créer des redirections 301 pour chaque SSdomaine et si oui vers quoi doivent elles pointer ?


Non, car si tu fais ça, tes cdn n'auraient aucun intérêt !


Quel fichier config configuré pour que pointage image se fasse vers les ss domaines ?


Franchement, si tu fais pas l'effort d'aller voir les documents que je te mets en lien, je peux pas plus t'aider. Si faire une copier/coller du nom du fichier...


Faut il tout regénérer en images ?


Non
Link to comment
Share on other sites

non, tu vois bien que tes 3 cibles pointes vers le root www, fais les pointer vers les noms de dossier..


Et d'après ce post en début de topic, ma config est fausse car il faut que je fasse pointer le img.monsite.fr vers www/img/ et non pas vers /www

Non ?
Link to comment
Share on other sites

Suffit d'un peu de logique et tout ira bien.
Si ça pointe vers www, alors dans la config, tu mettras :

define('_THEME_CAT_DIR_', 'http://img1.xxx.com/img/c/');



si ton cdn pointe directement vers le rep image, ben alors tu mettras :

define('_THEME_CAT_DIR_', 'http://img1.xxx.com/');

Link to comment
Share on other sites

Ben si mais c'est mal expliqué !
Ce que je cherche a optimiser c'est pas le theme mais le repertoire des images produits pour que ca // au chargement !
Et si l'on modifie comme indiquer ds la doc ou ds le forum et ben on modifie le them.DIR cad le repertoire du theme et pas l'affichage produit !
Cdlt,
Nadine

Link to comment
Share on other sites

Ben c'était justement une question que je me posait au début de ce post et pour laquelle la réponse a été apportée : faire pointer à la racine www les différents cdn.
Une fois fait (ce qui est ton cas), tu as juste besoin de paramétrer les différentes constantes évoquée à la première page. Certaines font référence aux images des produits, d'autres des catégories, d'autres encore, celles du templates, bref, tout est géré en fait.

Link to comment
Share on other sites

Et comment tout redemarrer car j'ai bien configuré mon fichier mais les modifications ne sont pas prises en compte...
J'ai bien mis les lignes a la fin du fichiers config !
En attente de votre retour,
Cdlt,
Nadine

Link to comment
Share on other sites

Et pourquoi ne pas mettre les redirections ds le haut du fichier ici:

$currentDir = dirname(__FILE__);

/* Base and themes */
define('_THEMES_DIR_',     __PS_BASE_URI__.'themes/');
define('_THEME_IMG_DIR_',  _THEMES_DIR_._THEME_NAME_.'/img/');
define('_THEME_CSS_DIR_',  _THEMES_DIR_._THEME_NAME_.'/css/');
define('_THEME_JS_DIR_',   _THEMES_DIR_._THEME_NAME_.'/js/');
define('_THEME_CAT_DIR_',  __PS_BASE_URI__.'img/c/');
define('_THEME_PROD_DIR_', __PS_BASE_URI__.'img/p/');
define('_THEME_PROD_PIC_DIR_', __PS_BASE_URI__.'upload/');
define('_THEME_MANU_DIR_', __PS_BASE_URI__.'img/m/');
define('_THEME_SCENE_DIR_', __PS_BASE_URI__.'img/scenes/');
define('_THEME_SCENE_THUMB_DIR_', __PS_BASE_URI__.'img/scenes/thumbs');
define('_THEME_SUP_DIR_',  __PS_BASE_URI__.'img/su/');
define('_THEME_SHIP_DIR_', __PS_BASE_URI__.'img/s/');
define('_THEME_LANG_DIR_', __PS_BASE_URI__.'img/l/');
define('_THEME_COL_DIR_',  __PS_BASE_URI__.'img/co/');
define('_SUPP_DIR_',       __PS_BASE_URI__.'img/su/');
define('_THEME_DIR_',      _THEMES_DIR_._THEME_NAME_.'/');
define('_MAIL_DIR_',        __PS_BASE_URI__.'mails/');
define('_MODULE_DIR_',        __PS_BASE_URI__.'modules/');
define('_PS_IMG_',         __PS_BASE_URI__.'img/');
define('_PS_ADMIN_IMG_',   _PS_IMG_.'admin/');

/* Directories */
define('_PS_ROOT_DIR_',             realpath($currentDir.'/..'));
define('_PS_CLASS_DIR_',            _PS_ROOT_DIR_.'/classes/');
define('_PS_TRANSLATIONS_DIR_',     _PS_ROOT_DIR_.'/translations/');
define('_PS_DOWNLOAD_DIR_',         _PS_ROOT_DIR_.'/download/');
define('_PS_MAIL_DIR_',             _PS_ROOT_DIR_.'/mails/');
define('_PS_ALL_THEMES_DIR_',       _PS_ROOT_DIR_.'/themes/');
define('_PS_THEME_DIR_',            _PS_ROOT_DIR_.'/themes/'._THEME_NAME_.'/');
define('_PS_IMG_DIR_',              _PS_ROOT_DIR_.'/img/');
define('_PS_CAT_IMG_DIR_',          _PS_IMG_DIR_.'c/');
define('_PS_PROD_IMG_DIR_',         _PS_IMG_DIR_.'p/');
define('_PS_SCENE_IMG_DIR_',        _PS_IMG_DIR_.'scenes/');
define('_PS_SCENE_THUMB_IMG_DIR_',  _PS_IMG_DIR_.'scenes/thumbs/');
define('_PS_MANU_IMG_DIR_',         _PS_IMG_DIR_.'m/');
define('_PS_SHIP_IMG_DIR_',         _PS_IMG_DIR_.'s/');
define('_PS_SUPP_IMG_DIR_',         _PS_IMG_DIR_.'su/');
define('_PS_COL_IMG_DIR_',            _PS_IMG_DIR_.'co/');
define('_PS_TMP_IMG_DIR_',          _PS_IMG_DIR_.'tmp/');
define('_PS_PROD_PIC_DIR_',            _PS_ROOT_DIR_.'/upload/');
define('_PS_TOOL_DIR_',             _PS_ROOT_DIR_.'/tools/');
define('_PS_SMARTY_DIR_',           _PS_TOOL_DIR_.'smarty/');
define('_PS_STEST_DIR_',            _PS_TOOL_DIR_.'simpletest/');
define('_PS_SWIFT_DIR_',            _PS_TOOL_DIR_.'swift/');
define('_PS_FPDF_PATH_',            _PS_TOOL_DIR_.'fpdf/');
define('_PS_PEAR_XML_PARSER_PATH_', _PS_TOOL_DIR_.'pear_xml_parser/');
define('_PS_CSS_DIR_',              __PS_BASE_URI__.'css/');
define('_PS_JS_DIR_',               __PS_BASE_URI__.'js/');

Link to comment
Share on other sites

Bonjour, je suis débutant, je suis sur Prestashop 1.4.1, j'ai tout compris sauf une chose, quelle type de redirection dois avoir les sous-domaines: no redirect, no flag, R, L ou RL je n'ai trouvé aucune réponse claire à cette question, merci d'voir bien expliqué tout le reste.
J' attend votre réponse avec impatience :). Merci du temps que vous consacrez à aider les plus novice. Merci

Link to comment
Share on other sites

  • 2 weeks later...

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...