0
簡単な解決策 (以下のトムの回答に感謝します。完全な説明についてはトムの回答をお読みください): webroot ディレクトリに新しい php ファイルを作成します。temp.php としましょう。そこから、include または request を使用して、webroot の外部にある test.php ファイルを呼び出します。
index.html -> temp.php -> test.php
- javascript を使用して temp.php に移動していますが、href も使用できます。
- temp.php では、以下を使用しました: include dirname(__FILE__)。'/../test.php';
- それだけです。test.php は URL から直接アクセスできません。外部から webroot 内のファイルに移動する場合は、次のようなものを使用します。参照: http://stackoverflow.com/questions/13550471/php-include-file-in-webroot-from-file-outside-webroot、FILE/DIR を見つけた場所

元の問題:
Arvixe (Linux ではなく Windows ホスティング) でホストされている Web サイトがあります。
私のドメイン ディレクトリには、test.php ファイルと wwwroot フォルダーがあります。
wwwroot フォルダー内に、index.html ファイルがあります。

index.html ファイルから、test.php ファイルを呼び出す単純なリンク/ボタンが必要です。ユーザーに php ファイルへの直接の URL アクセスを許可したくありません (そのため、ルート ディレクトリの外に置きます)。セキュリティのために web.config と .user.ini のものを試しましたが (これは機能しませんでした)、これが機能する場合、セキュリティは問題ないと思います。

  • href="../test.php" を試しましたが、動作しません (404 - ファイルまたはディレクトリが見つかりません)
  • test.php のアクセス許可は、wwwroot と同じです (cp ポータル経由)。
  • php ファイルを含めたくない、個別に呼び出して実行したい
  • スタックオーバーフローの関連するすべての投稿を2日間見ましたが、何も機能していないようです
  • ファイルへのフル パスを使用するか、仮想ディレクトリを作成することを提案する場合は、例を含めてください。運がなかった両方を試したので
  • また、ルート外のphpファイルにアクセスするにはphpスクリプトが必要になると読みましたが、外部ファイルを呼び出す方法がわかりません。これを一度試しましたが、404 例外が発生しました。それがうまくいったなら素晴らしいだろう

これを達成する簡単な方法はありますか?(特に、Windows Arvixe ホスティングを使用しているすべての人)。ここには簡単な答えがあるはずだと思います ): ここまで読んでくれてありがとう。

4

1 に答える 1

1

一部の PHP スクリプトは、Web アクセス可能でなければなりません。メインの PHP スクリプトを Web アクセス可能にしたくない場合でも、メイン スクリプトを呼び出すために別の Web アクセス可能な PHP スクリプトが必要です。SSI のような追加のテクノロジを導入しない限り、これを回避する方法はありません。

Windows を使用しているかどうかにかかわらず、求めていることに違いはありません。

于 2014-11-01T03:25:17.923 に答える