1

これが可能かどうかはわかりません。サーバーのデフォルトのページ値を知りたいので、「index.htm」または「index.php」として設定されている場合はそれを返します。これは、私が開発中の Web アプリ用です。ユーザーは FTP の詳細と Web サイトの URL を提供しましたが (これも自動的に把握できますか?)、デフォルトのページが何であるかを自動的に把握する必要があります。

URL によって返されたページに対して FTP ディレクトリ内のファイルをチェックして、それらが一致するかどうかを確認することを考えましたが、少しやり過ぎのように思えます。

事前に感謝します。十分な情報を提供していない場合はお知らせください。

4

3 に答える 3

2

php が特に apache モジュールとして実行されている場合、php スクリプトはサブリクエストを実行し、apache に解決させることができます。

http://www.php.net/manual/en/function.apache-lookup-uri.php

一般的な組み合わせですが、これは非常に多くの webserver+php 構成の組み合わせの 1 つにすぎません。

print_r(apache_lookup_uri('/'));
于 2012-06-02T20:25:36.080 に答える
1

これが可能だとは思いません。

ここで指定されているように)人々は独自のカスタムデフォルトインデックスを設定できるためです。もちろん、default.* と index.* を探すこともできます (デフォルトはインデックスをオーバーライドすると思います) が、それでは特殊なケース (カスタム ディレクトリ インデックスなど) をキャッチできません。

于 2012-06-02T20:48:37.583 に答える
0

これにより、ドメイン名とすべての 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>';
?>
于 2012-06-02T21:49:38.810 に答える