ホームページ  >  記事  >  バックエンド開発  >  PHP でコード表示を無効にする方法 (コード例) について話しましょう。

PHP でコード表示を無効にする方法 (コード例) について話しましょう。

PHPz
PHPzオリジナル
2023-04-03 18:53:221226ブラウズ

PHP は、さまざまな Web サイトやアプリケーションを構築するために、HTML や CSS などのフロントエンド言語と一緒によく使用される、一般的に使用されるサーバー側プログラミング言語です。開発プロセス中、プログラマーは多くの場合、自分自身または他の人が書いたコードをレビューしてデバッグまたは変更する必要があります。ただし、コードのセキュリティの保護やサーバーのセキュリティの維持などの理由から、特定のユーザーまたはプログラムによる PHP コードの表示を禁止する必要がある場合があります。

それでは、PHP でコードの表示を禁止するコードをどのように記述するのでしょうか?

まず、PHPコードの閲覧禁止機能を確実に機能させるため、Webサイトのルートディレクトリ以外のフォルダーにコードを格納することを推奨します。 Web サイトにアクセスする場合、Web サイトのルート ディレクトリ内のすべてのファイルに直接アクセスできるため、Web サイト以外のルート ディレクトリにファイルを保存すると、セキュリティを高めることができます。

2 番目に、PHP コードでは、次のメソッドを使用してコードの表示を禁止できます。

方法 1: Apache 構成ファイルを通じて禁止する

次の方法で使用できます。 Apache 次のコードを構成ファイル (httpd.conf ファイル) に追加します。

<Files *.php>
   deny from all
</Files>

このコードの意味は、すべてのユーザーがすべての PHP ファイルにアクセスすることを禁止することです。この方法は、Apache がファイル要求を実行する前に httpd.conf ファイルをチェックするため、非常に効果的であり、ここに設定することで、すべての PHP ファイルの閲覧を確実に禁止できます。欠点は、コードを表示する必要がある場合、ファイル構成を変更する必要があり、さらに面倒なことです。

方法 2: PHP コードをクラスに配置する

PHP コードをクラスに配置すると、コードへの非オブジェクト アクセスを効果的に禁止できます。コードは次のとおりです。

class SecretCode {
   private $code = "这里是php代码";
   function showCode($password) {
      if($password != "mypassword") {
         exit("访问被拒绝");
      }
      echo "$this->code";
   }
}

$myCode = new SecretCode();
$myCode->showCode("mypassword");

上記のコードでは、PHP コードはクラスにカプセル化されており、コードは showCode() メソッドが呼び出され、正しいパスワードが入力された場合にのみ表示されます。この方法の利点は、コードのセキュリティを効果的に制御できることです。欠点は、人によっては追加のパスワード操作が必要になることが少し面倒に思えることと、開発コストが比較的高いことです。

方法 3: .htaccess を使用して禁止する

.htaccess ファイルを使用すると、サーバー構成ファイルを変更せずにファイル アクセスを非常に柔軟に制御できます。次のコードを .htaccess ファイルに追加します。

<Files *.php>
  Order deny,allow
  Deny from all
</Files>

このコードの意味は、全員がすべての PHP ファイルにアクセスすることを禁止することです。この方法の利点は、ファイルのアクセス権限を柔軟に制御でき、他のWebサイトやサーバーの動作に影響を与えないことです。欠点は、他の設定と競合する可能性があり、注意が必要なことです。

概要:

PHP はオープンソース言語であるため、プログラムの保護には依然としていくつかの問題があります。ただし、権限のないユーザーやプログラムによる PHP ファイルの要求や操作を防ぐいくつかの方法により、コードのセキュリティを向上させることができます。より良い結果を達成するために、独自のプロジェクトのニーズに応じて、上記の 3 つの方法を使用する適切な方法を選択できます。

以上がPHP でコード表示を無効にする方法 (コード例) について話しましょう。の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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