Vorrei accedere a un file PHP il cui nome contiene caratteri UTF-8.Un nome di file PHP (o una directory nel suo percorso completo) hanno caratteri UTF-8?
Il file non contiene un DB. Contiene solo un'istruzione echo che mostra alcuni caratteri unicode.
Accesso alla pagina PHP dal browser (FireFox 3.0.8, IE7) si traduce in errore HTTP 500.
Ci sono due voci nel log di Apache (file è/க PHP;. La lettera க è un composito uno e corrisponde ai caratteri \ xe0 \ xae \ x95 nel registro sottostante):
[Sab Apr 04 09:30:25 2009] [errore] [client 127.0.0.1] PHP Avviso: sconosciuto: non riuscito open stream: Nessun file o directory in Unknown sulla linea 0
[Sab Apr 04 09:30:25 2009] [errore] [client 127.0.0.1] PHP Errore irreversibile: Sconosciuto: apertura fallita richiesta 'D:/VA/ROOT/\ xe 0 \ xae \ x95.php '(include_path =' .; C: \ php5 \ pear ') in Unknown sulla linea 0
La stessa pagina funziona quando i nomi di file e dir sono in inglese. Nella stessa configurazione, non vi sono problemi nell'utilizzo di SSI per queste pagine.
EDIT
informazioni Rimosso sulla riscrittura degli URL in quanto non sembra essere un fattore.
Quando mod_rewrite viene rimosso, il file PHP continua a non funzionare. Funziona se il file viene rinominato con un nome non UTF. Tuttavia, shtml funziona anche con i caratteri UTF nel nome del file e/o del percorso.
si può arrivare php per aprire il file dalla scansione della directory e utilizzando il nome che trova, anche se è in una codifica diversa. –
approfondito, grazie! – Znarkus
http://stackoverflow.com/questions/1525830/how-do-i-use-filesystem-functions-in-php-using-utf-8-strings -> Vorrei controllarlo qui – Revenant