web-dev-qa-db-fra.com

Question de réécriture de mod

Y a-t-il un moyen de réécrire

http://localhost/embed/player.swf?file=http://www.youtube.com/watch?v=7yKDhm4_-90

à quelque chose de plus petit?

ou y at-il un moyen de changer cela en

http://localhost/embed/script.php?id=7yKDhm4_-90

Que puis-je faire?

UPDATE

j'ai essayé avec quelque chose comme ça:

header('Content-type: application/x-shockwave-flash');
header('Content-Length: ' . filesize($file));
header('Connection: close');
$video_id = $_REQUEST['id'];
$content = readfile("http://localhost/embed/player.swf?file=http://www.youtube.com/watch?v=$video_id");
echo $content;

mais ça marche pas.

qu'est ce que je fais mal?

2
m3tsys

Essayez quelque chose comme ceci dans le fichier .htaccess (créez-le s'il n'existe pas déjà) dans le répertoire racine de votre site Web:

RewriteRule ^embed/player.swf?file=([0-9a-zA-Z0-9]+) embed/player.swf?file=http://www.youtube.com/watch?v=$1 [L]
2
user6569

cela devrait être possible avec l'une ou l'autre méthode; Je publierai une solution possible PHP.

include("player.swf?file=http://www.youtube.com/watch?v={$_GET['id']}");

Il s'agit d'une solution très simplifiée. Vous devez donc toujours filtrer vos entrées, échapper des sorties et identifier des ID vides si vous souhaitez les utiliser dans un environnement de production.

0
Jacob Hume