2010-06-25 7 views
0

J'ai un programme PHP qui permet à l'utilisateur de copier un URI dans un champ de texte. Il prend alors ce champ de texte et analyse le nom de fichier. Le problème que j'ai est que si l'utilisateur met juste "http://www.test.com/directory/" comment puis-je savoir si le fichier servi est index.php, index.html, etc etc? J'ai essayé d'utiliser apache_lookup_uri, mais cela ne me donne pas le nom du fichier.Comment puis-je obtenir le nom de fichier DirectoryIndex pour un URI donné en utilisant PHP?

Merci

+0

J'aurais dû mentionner que les URI sont sur le même serveur. – Cyrcle

+0

Ensuite, vous devez analyser les fichiers de configuration du serveur – Pentium10

Répondre

1

Vous ne pouvez pas.

Si le serveur est configuré, vous pouvez différemment avoir la configuration des fichiers pour l'index de répertoire comme main.htmljacko.aspiphone4.jsp

Franky vous ne voyez que de votre côté ce parse_url vous donne

<?php 
$url = 'http://username:[email protected]/path?arg=value#anchor'; 

print_r(parse_url($url)); 

echo parse_url($url, PHP_URL_PATH); 
?> 

L'exemple ci-dessus Affichera:

Array 
(
    [scheme] => http 
    [host] => hostname 
    [user] => username 
    [pass] => password 
    [path] => /path 
    [query] => arg=value 
    [fragment] => anchor 
) 

/chemin

0

S'ils sont sur le même serveur, vous pouvez le rechercher manuellement dans les fichiers conf.

Ou ...

Créez un répertoire fictif, ayant une douzaine de types de fichiers d'index, chacun ayant comme contenu leur nom de fichier trop. Faites une demande au répertoire et traitez la sortie. Vous avez le nom du fichier du serveur.

Questions connexes