-3

{php で短期集中コースを受講した後}、接尾辞 .php を使用して自分のサイトにページを作成しましたが、次のエラー メッセージが表示されます。

警告: include(): 12 行目の /home/u259153114/public_html/php_site/about.php の allow_url_include=0 により、サーバー構成で http:// ラッパーが無効になります 警告: include( http://musiccafefriends.neq3.com /php_site/header.php ): ストリームを開くことができませんでした: 12 行目の /home/u259153114/public_html/php_site/about.php に適切なラッパーが見つかりませんでした 警告: include(): ' http://musiccafefriends. neq3.com/php_site/header.php' for include (include_path='.:/usr/lib/php') in /home/u259153114/public_html/php_site/about.php 行 12 警告: include(/php_site/includes/nav.php): failed to openストリーム: No such file or directory in /home/u259153114/public_html/php_site/about.php on line 13 Warning: include(): Failed open '/php_site/includes/nav.php' for include (include_path='.:/ usr/lib/php') /home/u259153114/public_html/php_site/about.php の 13 行目

だから今私が間違ったことをした私はウェブデザインと新しいことを学ぶのが大好きですが、これは今私にストレスを与えています.何らかの理由でneq3サーバーが私のコーディングのアイデアをブロックしているようです

4

4 に答える 4

2

このメッセージはかなり自明です:

include(): http:// wrapper is disabled in the server configuration by allow_url_include=0 

次のように、リモートファイルを含めようとしていることを意味します(これは非常に悪い考えです)。

include('http://...../file.php');

ただし、(通常はセキュリティ上の理由から) この機能はこのサーバーでは無効になっています。リモートファイルをコピーしてローカルに含めることをお勧めします。

于 2013-07-06T18:59:59.907 に答える
1

Orangepill が言ったように、allow_url_include のデフォルト設定は無効になっています。

ただし、私が間違っていない限り、含めようとしているファイルは実際には同じサーバー上にあるようです (どちらも php_site というディレクトリにあるようです)。その場合は、インクルードを次のように変更できます。

include('http://musiccafefriends.neq3.com/php_site/header.php');

に:

include('header.php');

それらが同じサーバーでホストされていない場合、最善の策は、含めたいファイルを、含めたいサーバーに移動することです。

allow_url_includeは、クロスサイト スクリプティングを防止するためにデフォルトで無効になっています。これは、コードがエンドに含まれる前に相手側で評価されるためです。つまり、厄介なものがサーバーに挿入されて実行される可能性があります。

2番目の問題については:

Failed opening '/php_site/includes/nav.php'

パスの先頭にあるスラッシュ/は「絶対パス」になるため、PHP はファイルシステムのルートでファイルを探しますが、見つかりません。現在のフォルダーの下にある「includes」というフォルダーにある「nav.php」というファイルを探しています。インクルードを に変更するとinclude('includes/nav.php')、動作するはずです。

于 2013-07-06T19:09:04.533 に答える
1

スクリプトにリモート ファイルを含めようとしています。そうする代わりに、外部ファイルの内容をコピーし、サーバー上のファイルに入れてから含めることができます。

于 2013-07-06T19:00:54.930 に答える
0

エラーが示すように、ホストの 'allow_url_include` が false (デフォルト) に設定されています。これは、クロス サイト スクリプトが含まれないようにするためです。

ここでのオプションは、allow_url_include ディレクティブを 1 に変更するか、アセットをローカル マシンにコピーして、ファイル システム参照を介してインクルードすることです。

于 2013-07-06T18:59:09.000 に答える