2011-02-01 8 views
1

シナリオallow_url_fopenを:ホストされたサーバー上の開発、PHPは、htaccessファイルを含み、そして

問題でのhtaccess =基本認証、allow_url_fopenを=:私は彼らのURLの場所とファイルが含まれている場合、私のhtaccessのブロックが含まをし、401エラーを返します。 。

既知の解決策:相対パス(../)、$ _SERVER ['DOCUMENT_ROOT']。

質問:別の方法がありますか?このシナリオでは、可能であれば、URLを保持したいと思います。また、私はフッターのインクルードファイルを使用していますが、代わりにtplを使用する必要があります(私はtplについて何も知りません)?

編集:私は現在、自分のフォルダ構造を乱しています。私はexample.comとsecure.example.com(sslがインストールされている場所)を持っています。だから私の安全なフォルダでは、ルートからのファイルを含めるしたい。私は、 'document_root'呼び出しは安全なフォルダ(ルートではない)にしか行きませんし、ファイルを移動すると相対パスが動作しない可能性があるため、URLを使用すればもっと簡単かもしれないと思いました。

+0

これは、http://を介してローカルリソースを要求した場合にのみ発生します。あなたは例を見せてもらえますか? –

+0

なぜそれをURLのインクルードにしておきたいのですか? – NikiC

+0

良い質問です。私は詳細を与える上記の編集を行います。 –

答えて

2

あなたは本当にこれをしたくありません。これがデフォルトでオフになっている理由です。これを処理するより良い方法は、ファイルをlibcurlから取得することです。

$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$data = curl_exec($ch); 

次に、データをファイルに書き込んでインクルードすることができます。ただし、リモートソースを信頼しているため、これは本当に危険な動作です。チェーンはその弱いリンクと同じくらい安全です。 SSHを使用して定期的に同期を行うことは有効な方法です。

関連する問題