Il y a actuellement 385 visiteurs
Jeudi 25 Avril 2024
accueilactualitésdossierscomparer les prixtélécharger gratuitement vos logicielsoffres d'emploiforum informatique
Connexion
Créer un compte

.htaccess : transformer les accents d'une URL image en code

Besoin d'aide pour configurer un serveur ? Vous souhaitez obtenir des conseils pour référencer votre site ? Un petit souci pour accéder à votre FTP ? Des soucis de programmation en PHP / ASP / HTML / XHTML / XML / XSLT / CSS / ReactJS / AngularJS / VueJS / CGI / PERL / C / MySQL / PostgreSQL ??? Nous avons peut-être la solution dans ce forum ...

.htaccess : transformer les accents d'une URL image en code

Message le 15 Mai 2013 18:33

Bonjour à tous.

Je suis coincé par de nombreux fichiers ayant des accents dans leur nom : je migre un site vers un serveur tournant sous Linux (hébergé chez un professionnel), et j'ai beaucoup d'images ayant des noms de fichiers avec des accents : impossible de changer leur nom vu leur nombre, et vu l'utilisation immense dans les nombreuses pages et aussi dans la base de données sous la forme d'HTML stocké.

Comment, grâce à de l'URL Rewriting, transformer le nom d'un fichier demandé dans une balise <IMG> dans la propriété SRC par un nom avec des codes en lieu et place des accents ?

Exemples d'URL demandées dans des balises <IMG> :

Code: Tout sélectionner
URL demandée par la propriété SRC            TRANSFORMATION SOUHAITÉE

http://monsite/IMAGES/Un_bel_été.jpg          http://monsite/IMAGES/Un_bel_%e9t%e9.jpg
IMAGES/Je_vais_à_la_plage.gif                 IMAGES/Je_vais_%e0_la_plage.gif


En fait, voici une liste d'accents et de leur code associé que je souhaiterais convertir grâce à .htaccess :

è : %e8
é : %e9
à : %e0
È : %c8
É : %c9
À : %c0
etc...

Précision : je cherche le code à taper dans le fichier .htaccess pur réaliser la transformation souhaitée.

Merci à tous !
bluemanca
Visiteur Confirmé
Visiteur Confirmé
 
Messages: 17
Inscription: 13 Déc 2010 18:34
 


Re: .htaccess : transformer les accents d'une URL image en c

Message le 16 Mai 2013 15:45

Bon, grâce à l'aide d'un internaute bienveillant, "yponomeut", et divers peaufinages, je suis parvenu à trouver une première solution qui marche nickel :

Le fichier .htaccess :

Code: Tout sélectionner
# Le serveur doit suivre les liens symboliques :
Options +FollowSymlinks

# Activation du module de réécriture d'URL :
RewriteEngine on

# Réécriture des fichiers images n'ayant pas été trouvés :
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule IMAGES/(.*)$  http://www.monsite.extension/URLRewritingPourIMAGES.php?img=$1 [L]


Le fichier "URLRewritingPourIMAGES.php ":

Code: Tout sélectionner
<?php
//------------------------------------------------------------------------------
// URLRewritingPourIMAGES.php
//------------------------------------------------------------------------------
// Définit certaines variables pour mon site dont $LIAISON_Root nécessaire ici
include_once "FFTI.inc.php";

if (isset($_GET['img']))
{
  $NomFichierImage = $_GET['img'];
 
  $TabAccents = array('é','è','ê','ë','È','É','Ê','Ë','à','â','ä','À','Â','Ä','ù','û','ü','Ù','Û','Ü','î','ï','Î','Ï','ô','ö','Ô','Ö');
 
  for($i=0; $i<count($TabAccents); $i++) {$TabAccentsUTF8[] = utf8_encode($TabAccents[$i]);}
  $NomFichierImage = str_replace($TabAccentsUTF8, $TabAccents, $NomFichierImage);
 
  // $LIAISON_Root doit contenir le chemin physique sur le disque dur (il est initialisé par FFTI.inc.php)
  $PathFileName = $LIAISON_Root.'IMAGES/'.$NomFichierImage;
  $Extension = strtoupper(substr($PathFileName,-3));
 
  switch ($Extension)
  {
    case 'JPG': $Header = 'Content-Type: image/jpeg'; break;
    case 'GIF': $Header = 'Content-Type: image/gif'; break;
    case 'PNG': $Header = 'Content-Type: image/png'; break;
    default : exit("URLRewritingPourIMAGES.php : Type d'image non implémenté : [$Extension]");
  }
 
  header($Header);
  readfile($PathFileName);
}
//------------------------------ FIN DE FICHIER ------------------------------?>

En espérant que cela servira à des personnes confrontées au même problème que moi. ;)
bluemanca
Visiteur Confirmé
Visiteur Confirmé
 
Messages: 17
Inscription: 13 Déc 2010 18:34
 

Re: .htaccess : transformer les accents d'une URL image en c

Message le 16 Mai 2013 15:56

Merci pour le retour :wink:
Avatar de l'utilisateur
RobinSG
Moderateur
Moderateur
 
Messages: 1509
Inscription: 29 Juin 2004 14:26
Localisation: Atys
 

Re: .htaccess : transformer les accents d'une URL image en c

Message le 16 Mai 2013 16:13

Sympa en effet, ça peut être très utile... ;)
Avatar de l'utilisateur
H3bus
Moderateur
Moderateur
 
Messages: 12195
Inscription: 08 Avr 2008 15:13
Localisation: /home/h3bus
 



Sujets similaires

Message Sauvegarde/restauration d'image système avec un ASUS 206 HA
Bonjour,J'ai un ASUS 206 HA, petit ordinateur très pratique pour des tas de choses Avec seulement quelques limites : un disque SSD de 32 Go ..... Après installation et configuration des programmes nécessaires j'ai voulu faire une image système.Mais pas si facile que cela Après de nombreuses ga ...
Réponses: 11

Message suprimer code pin
Bonjour,Je n'arrive pas a supprimer le code pin de l'écran de démarrage samsung M23.J'ai pourtant décocher la case mais rien ni fait.Cdt
Réponses: 0

Message Image qui se bloque pendant 2 seg ?
Bonjour à tous,Il y' a environ 1 mois, j'ai fait la mise à jour de mes ( drivers ) pilotes avec drivers cloud.J'ai du de mémoire en faire 5 6 de différent dont la carte graphique, carte mère...Mais depuis il m'arrive au moins une fois par jour en jeux ou pendant une vidéo, que l'image se bloque pen ...
Réponses: 29

Message Problème d'image enregistré
Bonjour tout le monde,J'ai depuis que j'ai eu mon pc un problème concernant les images que j'enregistre sur mon pcPar exemple sur discord j'essaie d'enregistré une image qu'on m'a envoyé et une fois enregistré,cette image devient un dossier qui peut être téléchargerDans le cas présent j'ai enregist ...
Réponses: 4

Message Création site web - Code ou CMS ?
Bonjour, Je suis ici car je cherche un avis vraiment honnête là dessus.J'entends beaucoup de critique sur Wordpress. Hors j'aimerai faire un petit site, type blog / site vitrine avec des articles mis en ligne de temps en temps. J'aimerai un truc assez beau et facile à prendre en main.Mais quand je d ...
Réponses: 6

Message Comment insérer une image dans un sujet ?
Bonjour, j'aimerais savoir comment faire pour insérer une image dans un de mes sujets sur frorum de ce site, s'il vous plaît
Réponses: 3

Message comment insere une image
bonjour a tous qui pourrait me dire comment inserer une imagemerci
Réponses: 1


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 4 invités


.: Nous contacter :: Flux RSS :: Données personnelles :.
cron