2016-05-26 37 views
-1

私はphpには新しく、私のactuallディレクトリの下のサブディレクトリにあるファイルの内容を読みたいと思っています。 私の現在のディレクトリは/ var/www/drop/portal /で、index.phpはそのディレクトリにあります。 私は/ var/www/drop/portal/php/dirを私のpaswwordファイルsiにしました。ここfile_get_contents phpとサブディレクトリ

は私の「index.phpを」ページの簡単なコードです:

<html> 
<body> 
<font size="2" face="Arial">Bienvenu sur mon outil S3</font> 
<?php 
define("BASEPATH"," /var/www/drop/portal/php/"); 
$my_filedistant_test = file_get_contents(BASEPATH."/passwd-s3fs.txt"); 
echo $my_filedistant_test; 
?> 
</body> 

が、起こって何も...

+0

エラーファイルが何と言っていますか?ファイルのアクセス許可については何か?最初にエラーファイルをチェックすることを検討しましたか? – kainaw

+1

相対パスを使用することをお勧めします。あなたはindex.phpファイルがどこにあるかを知っていて、他のファイルがどこにあるのかを知っています。 PHPでは、 '__DIR__'と' realpath(__ FILE __) 'マジック定数を使って、現在実行中のファイルを含むディレクトリを取得し、その値を使って必要なファイルを取得することができます:' file_get_contents(__ DIR__。 '/passwd-s3fs.txt'); 'あなたの後ろのもののように見えます。もちろん、スクリプトを実行しているユーザーは、そのファイル/ディレクトリへの読み取りアクセス権を持っている必要があります。 –

+1

おそらく '/ var'の前のスペースで、BASEPATH定義にあります。 – Progrock

答えて

-1

これは私がすべてのエラー時にチェックするためにどうなるのかです:

また
<?php 
error_reporting(E_ALL); 
ini_set('display_errors', '1'); 
?> 

、あなたは間違いなく、あなたがアクセスしようとしているパスを印刷することによりダブルチェックしている場合:

echo BASEPATH."/passwd-s3fs.txt" 

入力ミスがないことを確認してください。

1

file_get_contentsのパラメータパスに二重スラッシュがあります。 allow_url_fopenを有効にした場合

チェック:

<?php 
    var_dump(ini_get('allow_url_fopen'); 
?> 

私は相対基本パスを使用することをお勧め

次の真行く場合:

<?php 
    define("BASEPATH", getcwd() .'/php'); 
    $my_filedistant_test = file_get_contents(BASEPATH."/passwd-s3fs.txt"); 
    echo $my_filedistant_test; 
?> 
+0

私はPhpが二重スラッシュを気にするのではないかと疑います。しかし、それを取り除く方が良い。 – Progrock

+0

それは働いた!ありがとう – MouIdri

+0

正しい答えを割り当ててください。だから、このような問題を抱えている人は、この場合どのような作業ができるかを見ることができます。ありがとう! –

関連する問題