garriman:
I'm not sure, but I think the last file name has to be an executable.
'foo.com/script.php' would work because script.php is an executable file (script.php)
'foo.com/script/john/23.php' would also work, because the last file is an executable file (23.php), but 'foo.com/script.php/john/23 won't work because there is no executable file at the end.
If you want to open 'john/23' you are going to have to open your page 'foo.com/script.php and then call 'john/23' from within your page after your page loads.
"ASP.NET does URL mapping. Can I implement it to fix my problem?"
NO! I am pretty sure that, that would not work.
Your problem is not URL mapping. I am sure the file 23 is in the path Script.php/john, but like I said, it won't execute because it is not an executable file.
Hope this helps.
Good Luck