ホームページ >バックエンド開発 >PHPチュートリアル >PHP の realpath と file_exists が空の文字を返すのはなぜですか?

PHP の realpath と file_exists が空の文字を返すのはなぜですか?

WBOY
WBOYオリジナル
2016-06-23 13:21:001608ブラウズ

私は php の人間ではありませんが、php プログラムをダウンロードして環境を構築しました。

Web サイトのルート ディレクトリにあります。 、index.phpにはこれが含まれています

if(!file_exists('install/lock')){echo '-'.realpath('install/lock').'-'.'-<br/>';echo '-'.realpath('index.php').'-<br/>';   // header('Location:install/index.php');    exit();}

クライアントはこれを返します
--<br/>--<br/>



しかし、インストールディレクトリ内のindex.phpファイルには次の文があり、実際に実行できます。 。すべてのパスを取得することもできます。上位ディレクトリも問題ありません。 。

if (file_exists('lock')){	@header("Content-type: text/html; charset=UTF-8");echo '-'.realpath('lock').'-<br/>';echo '-'.realpath('../index.php').'-<br/>';	echo "系统已经安装过了,如果要重新安装,那么请删除install目录下的lock文件";	exit;	}


-D:\phpwebs\wesambonew20151206\install\lock-<br/>-D:\phpwebs\wesambonew20151206\index.php-<br/>系统已经安装过了,如果要重新安装,那么请删除install目录下的lock文件



正しく設定されていませんか?


ディスカッションに返信(解決策)

クソ....Webサイトのルートディレクトリの上位ディレクトリ(D:phpwebs)にはWebサイト利用者のアクセス権がありませんこの問題は が原因なので、これを追加するだけです。 。くそ。 。


なぜasp.netを使わなくても問題ないのでしょうか? 。 。人を殺す php. 。 。

header('Location:install/index.php'); をコメントアウトしました。もちろん、出力できるのは --076402276aae5dbec7f672f8f4e5cc81--076402276aae5dbec7f672f8f4e5cc81


if(!file_exists(' install) /lock')){ //install/lock が存在しない場合は、ブランチに入ります
echo '-'.realpath('install/lock').'-'.'-076402276aae5dbec7f672f8f4e5cc81';存在しないファイルのフルネームを出力します。これは当然空です
echo '-'.realpath('index.php').'-076402276aae5dbec7f672f8f4e5cc81' //この出力は空です。間違って書いています
// header('Location:install/index.php') // これがコメントアウトされている場合、アクションはありません
}
;

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。