不确定这是否可能。我想找出服务器的默认页面值是什么,所以如果它被设置为"index.htm“或"index.php”,那么就返回它。这是我正在开发的一个web应用程序;用户已经提供了他们的FTP详细信息和网站URL (这也能自动解决吗?),但然后我需要自动找出他们的默认页面是什么。
我想可能会根据URL返回的页面检查FTP目录中的文件,看看它们是否匹配,但这似乎有点过分了。
提前感谢,如果我没有提供足够的信息,请让我知道。
发布于 2012-06-03 04:25:36
如果php专门作为apache模块运行,那么php脚本可以执行子请求,并让apache为您解析它。
http://www.php.net/manual/en/function.apache-lookup-uri.php
虽然这是一个常见的组合,但它只是众多webserver+php配置组合中的一个。
print_r(apache_lookup_uri('/'));发布于 2012-06-03 04:48:38
我不相信这是可能的。
因为(as specified here)用户可以设置自己的自定义默认索引。当然,您可以查找default.*和index.* (我相信default覆盖index),但这不能捕获边缘情况(如自定义目录索引)。
发布于 2012-06-03 05:49:39
这将为您提供域名以及所有index.*和default.*文件的数组,其中文件类型作为值,文件路径作为键。
<?php
$domain_name = $_SERVER['HTTP_HOST'];
echo $domain_name.'<br/>';
$files = glob($_SERVER['DOCUMENT_ROOT'].'/index.*');
$files = array_merge($files, glob($_SERVER['DOCUMENT_ROOT'].'/default.*'));
$indexes = array();
foreach($files as $index)
{
$index_info = pathinfo($index);
$indexes[$index_info['dirname'].'/'.$index_info['basename']] = $index_info['extension'];
}
echo $_SERVER['DOCUMENT_ROOT'].'</br>';
echo '<pre>'; print_r($indexes); echo '</pre>';
?>https://stackoverflow.com/questions/10865594
复制相似问题