[PHP/CSS] Prb sur fond aléatoire

Petit nouveau ! | 3 Messages

23 janv. 2013, 10:43

Bonjour à tous

Je réalise un site web pour ma boite. Un truc tout simple... mais avec un problème ! Je suis hébergé chez Gandi (avec Simple Hosting), j'ai développé le site en local qui fonctionnait très bien...

La structure du site est la suivant :
- index.php
- répertoire img
- répertoire src (avec feuille de style, javascript etc.)

La feuille de style contient un tout petit script php permettant un affichage aléatoire de l'image de fond :

Code : Tout sélectionner

<?php $i = rand(1,6); $selectedBg = $i.".jpg"; ?> body { background-image:url(../img/<?php echo $selectedBg; ?>); background-size:cover; }
Cette feuille de style est appelée dans index.php :

Code : Tout sélectionner

<link rel="stylesheet" type="text/css" href="src/style3.php" />
En local tout marche très bien. Sur Gandi, une fois sur 3, j'ai un fond blanc. Je ne pense pas qu'il s'agisse d'un problème de droit dans la mesure où parfois l'image de fond s'affiche. Je ne sais pas si il faut chercher du côté du système de cache de chez Gandi. Les fichiers logs ne m'indiquent pas grand chose. Il y'a juste cette erreur que je ne comprends pas :

Code : Tout sélectionner

[Wed Jan 23 08:51:40.537246 2013] [mpm_event:notice] [pid 221:tid 2817809340224] AH00493: SIGUSR1 received. Doing graceful restart AH00557: apache2: apr_sockaddr_info_get() failed for paas_15123 AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.0.1. Set the 'ServerName' directive globally to suppress this message
Mais pas sur que ce soit lié !

Si quelqu'un a des idées je suis preneur, c'est un peu bête comme problème...

Cdt,

Jean-Baptiste

ViPHP
xTG
ViPHP | 7331 Messages

23 janv. 2013, 11:31

Le mieux serait de regarder dans le fichier css généré (FireBug sur Firefox t'affichera cela très bien).
Si tu utilises Chrome attention, car l'ouverture des outils de DEV recharge la page pour récupérer le code (tout du moins c'était ainsi quand je l'utilisais l'an dernier).

Eléphant du PHP | 267 Messages

23 janv. 2013, 12:16

salut,

jette un oeil à l'article :
http://www.journaldunet.com/developpeur ... ique.shtml
y a peut etre des infos intéressantes, notamment sur l'entete à utiliser

@+
dix2

Petit nouveau ! | 3 Messages

23 janv. 2013, 15:32

Merci je vais regarder ça, on tape dans le sujet j'ai l'impression

Petit nouveau ! | 3 Messages

27 janv. 2013, 14:49

Salut,

C'est bon problème résolu. Il y'avait deux problèmes :

- Le premier, tout con, la moitié de mes fichiers étaient en .JPG au lieu de .jpg... =D>

- Le second : il faut effectivement neutraliser les systèmes de cache (sinon la même image s'affiche jusqu'à ce que le serveur recharge le fichier). Par exemple chez Gandi il faut ajouter en en-tête :

Code : Tout sélectionner

header("Cache-Control: max-age=1");
Ca désactive leur système Varnish Cache.

Si on ne souhaite pas le désactiver j'imagine que l'on peut faire le tirage aléatoire en javascript, comme ça cela s'exécute côté client.

JB