[Résolu] Vérifier l'utilisation de fichier uploadés [...]

WRInaute passionné
Je propose à mes membres d'uploader des fichiers images...
Cela fait une petite année que le service tourne et 1Go d'images sont stockées sur le serveur...

Certaines ont été uploadés mais jamais étés utilisés... Une idée pour vérifier l'utilisation des fichiers, basé sur les logs serveurs, ou quelque chose du genre...

La situation n'est pas urgente, mais bon, je préfère être prévoyant...
La seul solution que j'ai trouvé serait de faire un gros script bash qui listerait les images et les comparerait aux logs serveurs et si Accès = 0 alors on supprime... Mais certaines de mes images ne sont affichées qu'une fois par mois ;)


J'hésitais entre mettre ça dans "développement d'un site web" ou dans "administration [...]"...
 
WRInaute passionné
Si tu fonctionnes sur serveur et qu'en un an tu n'as accumuler "que" 1 Go, je pense que tu peux laisser tel quel encore pas mal d'années avant que ton serveur ne surcharge.

Néanmoins, si tu souhaites vraiment "faire le ménage" peut-être peux-tu contacter (puisque ce sont des membres, j'imagine que tu as l'email des uploaders) les membres pour les "avertir" de l'inactivité de leurs images avant suppression.


'hésitais entre mettre ça dans "développement d'un site web" ou dans "administration [...]"...

j'aurais choisi administration :wink:
 
WRInaute impliqué
Julia41, puisque que finalement c dans la rubrique développement j'aurais bien une solution php, mais tu vas encore dire que cela dépasse ton niveau de programmation (pourtant ce que tu voudrais faire avec un bash me parrait beaucoup plus compliqué ;-) )
Alors la solution toute bête en php c'est de passer par un php qui va compter le nombre d'affichage par exemple

<img src="getImage.php?image=toto.jpg">

et dans getImage.php

Code:
<?php
  // ici une petite requete sql pour faire + 1 ou autre ...

  header( "Content-type: Image/jpg" );
  echo file_get_contents( $_GET['image'] );
?>
 
WRInaute occasionnel
A condition que tu n'ai pas désactivé les stats sur ton filesystem, tu peux utiliser la commande "stat" qui te donne la date de dernier accès de ton fichier.
Cela peut être la manière de savoir s'il a été lu par le serveur web ou pas. Exemple :

Code:
$ stat 622-1178175216.jpg
  File: `622-1178175216.jpg'
  Size: 12738     	Blocks: 32         IO Block: 4096   fichier regulier
Device: 902h/2306d	Inode: 9231212     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/     web)   Gid: ( 1000/     web)
Access: 2008-08-07 18:24:00.000000000 +0200
Modify: 2008-03-04 22:00:30.000000000 +0100
Change: 2008-05-25 22:10:46.000000000 +0200
 
WRInaute passionné
ltressens a dit:
A condition que tu n'ai pas désactivé les stats sur ton filesystem, tu peux utiliser la commande "stat" qui te donne la date de dernier accès de ton fichier.
Cela peut être la manière de savoir s'il a été lu par le serveur web ou pas. Exemple :

Code:
$ stat 622-1178175216.jpg
  File: `622-1178175216.jpg'
  Size: 12738     	Blocks: 32         IO Block: 4096   fichier regulier
Device: 902h/2306d	Inode: 9231212     Links: 1
Access: (0644/-rw-r--r--)  Uid: ( 1000/     web)   Gid: ( 1000/     web)
Access: 2008-08-07 18:24:00.000000000 +0200
Modify: 2008-03-04 22:00:30.000000000 +0100
Change: 2008-05-25 22:10:46.000000000 +0200


Mouahaha et dire que j'ignorais cette commande -_-'

Parfait ça va être vraiment easy maintenant... Juste un big bash à créer, mais ce n'est pas pour tout de suite ;)

@julienr, je ne peux pas compter le nombre d'affichage pour les stocker dans une BDD, beaucoup beaucoup trop trop d'accès...

@oli004, complètement d'accord avec toi, je peux encore rester ainsi bon nombre d'années, c'était surtout pour voir si je devais tracker les images dès maintenant ou alors s'il y avait une méthode comme celle indiquée par ltressens

Prochaine fois, je posterais dans la bonne section :p
 
Discussions similaires
Haut