ホームページ > バックエンド開発 > PHPの問題 > php fopenがエラーを報告した場合の対処方法

php fopenがエラーを報告した場合の対処方法

藏色散人
リリース: 2023-03-10 08:56:01
オリジナル
3241 人が閲覧しました

php fopen エラーの解決策: 1. ディレクトリまたはフォルダーのアクセス許可を変更します; 2. ファイルを開くパスを変更します; 3. php.ini 構成ファイルを変更します。

php fopenがエラーを報告した場合の対処方法

この記事の動作環境:centOS6.8システム、phpバージョン7.2.2、DELL G3コンピュータ

php fopen関数は false を返します。どうすればよいですか?

yum を使用して apache2.4.6 php 7.2.2 をインストールします。正しくインストールした後、fopen() 関数を使用してファイルを開くと false が返されます

Baidu には 3 つの理由があります

1. ディレクトリまたはフォルダーのアクセス許可の理由

(chmod -R 777 ルート ディレクトリとフォルダーを使用して最高のアクセス許可を設定できます)

2. ファイル パスを開く際のエラー

3. オープニングメソッドエラー(w,r,a)等

##上記のエラーではないことが判明しました

#手動でphpエラーレポートを追加

//error handler function
function customError($errno, $errstr){ 
         echo "<b>Error:</b> [$errno] $errstr";
 }
//set error handler
set_error_handler("customError");
ログイン後にコピー

返されるエラー メッセージは次のとおりです

failed to open stream: Permission denied
ログイン後にコピー

権限がないことを証明します

読み取り専用モードに切り替えると通常どおり開くことができます

PHP だと思います権限が制限されています。

php.ini で open_basedir を検索して構成を表示します。デフォルトはコメントが失われています。つまり、権限に制限はありません。

最終的に、さまざまな Baidu で見つけました。インターネット上で

# that selinux Permission Management is install by default in the centos system, and it is Enabled bydefault

百度で selinux を検索したところ、ほとんどの紹介が次のようです。直接閉じてください。設定するのは非常に面倒そうです。

あとはオフにするだけです。

vim /etc/selinux/conf
ログイン後にコピー

SELINUX= enforcing
ログイン後にコピー

SELINUX=disabled
ログイン後にコピー

の変更が表示されます。

サーバーを再起動します

通常どおりファイルを再度書き込みます

推奨学習:「

PHP ビデオ チュートリアル

以上がphp fopenがエラーを報告した場合の対処方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
php
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート