Originariamente inviato da marcopanino
Io farei così:
1) metto i preziosi swf in una cartella non accessibile pubblicamente, ma accessibile dalle pagine php (per es. se il sito pubblico è in /htdocs, creare una cartella /riservata)
2) creo un numero casuale piuttosto lungo e lo metto sia in sessione sia come parametro del link al gioco. Il link è sempre una pagina php, ma ogni volta con ID diverso (es.
http://www.sito.com/parser.php?id=12345678901234567890)
3) metto in sessione anche il gioco richiesto.
In questo momento in sessione ho "pacman" e "12345678901234567890".
Il numero cambia ogni volta che carico la pagina che contiene i link ai giochi, e quindi non è prevedibile.
4) il file parser.php controlla se il numero passato tramite URL è identico a quello presente in sessione, e se corrisponde legge e scrive nell'output l'swf pari pari (mi sembra che la funzione sia readfile()), magari inviando un header prima.
Quando qualcuno cerca di collegarsi da un sito esterno a parser.php?id=12345678901234567890 in sessione non avrà il codice e quindi non potrà vedere il gioco.
Considera però questo: se uno ci gioca anche una volta se lo ritrova bello bello nella cache del browser!
Perciò dovresti implementare un sistema per impedire che l'swf sia eseguito da un dominio o IP diverso dal tuo.
Per questo bisognerebbe conoscere bene la programmazione di actionscript, della quale io sono completamente digiuno.
Buon anno!