![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?5a7ff87)
phpで別のドメイン下のファイルをrequireしようとしていますがうまくいきません。
サーバーの環境は【Windows Server 2008 + IIS6.0 + php5.2】で、
php.iniのallow_url_includeはonに設定済みです。
ファイルA http://xxx.com/aaa.php
<html>
<head>
</head>
<body>
<?php
require_once("http://localhost/test.inc");
echo $remember;
?>
</body>
</html>
ファイルB http://yyy.com/bbb.php
<?php
$remember=5577;
?>
仮にファイルAに「require_once("http://yyy.com/bbb.php");」と書いて実行すると、空白のページが出力され、ページのソースは
<html>
<head>
</head>
<body>
となっていました。
phpコードを実行するところで処理が中断されたようです。
空白ページのタイトルは「500-内部サーバーエラー」です。
同じサーバーの違うドメインで試しても、物理的に別のサーバーで試しても結果は同じでした。
ネットで調べた限りでは結構みんなすんなりとできたみたいなので、なおさら不思議で仕方がないです。
何が考えられるか、教えていただければと思います。
No.3ベストアンサー
- 回答日時:
ANo.1でも書かれていますが、リモートファイルのincludeは、相手先のwebサーバが返す内容をincludeします。
つまりbbb.phpは<?php
print '<?php' . PHP_EOL;
print '$remember=5577;' . PHP_EOL;
print '?>' . PHP_EOL;
?>
と書いておかなければ、質問者さんが期待されている動作にはなりません。同一サーバ内でもファイル名をhttpから記述すれば同じことです(localhostの80番ポートへアクセスするというだけです)。
相手先サーバがファイル内容をそのまま返す拡張子(.txtなど)にするという方法もありますが、いずれにしても生のphpソースを外部公開するに等しいので、あまりお勧め出来る手法ではありません。キチンと(bbb.php側で)アクセス元のIPアドレスなどを制限してください。
(蛇足)
なお同一サーバに対してのリモートアクセスは無駄なトラフィックになるので避けるべきです。サーバパスで記述すれば済むことですので。
No.2
- 回答日時:
とりあえず、該当のサーバーは物理的に近付ける場所にありますか?
それなら確認が楽なんですけど。
サーバ上で、ブラウザを立ち上げて呼び出したいPHPファイル(http://yyy.com/bbb.php)にアクセスするとどうなりますか?
サーバ上のブラウザから正しく呼び出せたとして、サーバ上のPHPエンジンが外部にアクセスできないようにファイアウォールでブロックしている可能性は?
まずはその辺りから調べる必要がありますかね。
No.1
- 回答日時:
その
http://yyy.com/bbb.php をブラウザで表示すると、何も表示されませんよね?そのyyy.com がPHPを実行可能な場合、拡張子が php ですから、画面には何も出ないのではないかと思います。
で、その結果をファイルAでは require 仕様としていますから、対象が何も無いので 500 エラーとなっているのではないでしょうか?
あまりそのような、管理が面倒な手段はとったことがないのですが、 拡張子が .inc ならできるのかもしれません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- PHP PHPプログラムの間違い 1 2022/10/06 14:33
- PHP PHP MySql 画像を取得 1 2022/06/04 14:05
- PHP 入力した部分を表示させたまま(保持)するにはどうすれば良いでしょうか? 1 2023/01/25 11:14
- PHP PHPでCookieを使った訪問回数について 1 2023/05/28 14:10
- PHP PHPでユーザー情報を入力して簡易ログイン機能をつくってみたのですが 1 2023/05/29 08:51
- AJAX JavascriptからPHPへのAjax通信でnullが返ってくる 3 2022/08/03 22:00
- PHP どうして送信されないのでしょうか? 1 2022/12/09 05:23
- PHP PHPのエラーの解消法について教えて下さい。 1 2023/02/06 10:48
- PHP php テーブルが作成できない 1 2022/11/17 23:41
- PHP PHP MySql ページング 2 2022/09/20 06:38
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
さくらレンタルサーバーでPHPが...
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
.phpファイルが、表示されない
-
use と requireの違いは?
-
session_start()でwarningが表...
-
Quixplorerがうまく動作しない...
-
コマンドプロンプト エラー
-
PHPを使ってのサーバ上ファイル...
-
phpで別のファイルの変数に代入...
-
CakePHP2のCronでのShellを使う...
-
PHP+MySQL SQL文を外部ファイル...
-
cronで動かすと保存されなくなる
-
file(), file_get_contents(), ...
-
URLが.PHPってどういう...
-
フォントの色を変えるには?
-
onedrive にexcelファイルをア...
-
Subversionのリポジトリの削除
-
拡張子php画像をjpg画像等に変...
-
PHPのif文でその処理を途中で抜...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.phpと.incファイルの違いはな...
-
【file_exists】ファイルが存在...
-
.phpファイルが、表示されない
-
URLが.PHPってどういう...
-
サイトのphpソースコードを表示...
-
HTMLに埋め込んだPHPがうまく出...
-
PHP+MySQL SQL文を外部ファイル...
-
use と requireの違いは?
-
さくらレンタルサーバーでPHPが...
-
PHPファイルの中身が見られるこ...
-
fputs()はfwrite()のエイリアス...
-
プロパティファイルの読み込み...
-
コマンドプロンプト エラー
-
PHPを使ってのサーバ上ファイル...
-
htmlspecialcharsが機能してい...
-
phpmailerで送れない添付ファイ...
-
別のドメインのファイルをrequire
-
[PHP+XML]PHPで動的に出力す...
-
phpinfoの内容が見れない
-
CakePHP2のCronでのShellを使う...
おすすめ情報