• 締切済み

fopenがURL指定で開けない

別サーバーにあるwmvファイルをDLさせようとしているのですが、以下のWarningが出てURL指定でfopenで開けません。 Warning: php_network_getaddresses: getaddrinfo failed: name or service is not known in [URL] php.iniで、allow_url_fopen はONになっており、ファイルを同サーバー内に置いてパス指定した場合は成功するのですが。。。 3日かけて調べましたが全く手詰まりです。。 何か他に考えられる原因はありますでしょうか? すみませんがどなたか感所のある方、宜しくお願いします。<(_ _)> 環境: RedHat Linux Apache1.3.3 PHP4.3.x

みんなの回答

  • little-m
  • ベストアンサー率44% (45/102)
回答No.2

サーバーの環境がわからないのですが、取りあえず、ローカルIPのLAN内にご自身でサーバーを立てたという事でOKでしょうか? そうであれば、同じLAN上でWindowsマシンが接続されていれば、そのWindowsマシンのローカルネットワークのDNSで設定されているIPがネームサーバーのIPですので、そのIPを設定すればよいはずと思います。 設定変更後はbindをリスタートする必要あると思います。 (当方もサーバー設置が専門ではありませんので詳しくは知らないので、ご了承下さい)

squirrelyk
質問者

お礼

ローカルのものではなく、ある加入者のみが閲覧できる独自ネットワーク網です。 取り合えず、/etc/hosts や /etc/resolv.confを書き換えてトライ&エラーを繰り返しましたが、その後ルーティングに原因があることが分かりました。 こちらは自分の範疇に負えるものではなく、変更も困難なようなので、結局データファイルと同サーバにスクリプトを置くことにしました。 するとまた別のfopen問題が出てまいりましたが、それは又後ほどにしたいと思います。 色々とお手伝い頂きありがとうございました。

  • little-m
  • ベストアンサー率44% (45/102)
回答No.1

このサーバーのDNSの設定がうまく行われていないのだと思います。 fopen(URL) を使用する場合は、サーバー側で、URL→IPアドレス取得を行いますが、ネームサーバー等が適切に設定されていないと、こういった現象になるのではと思います。 サーバーの /etc/resolv.conf にDNSサーバーがちゃんと設定されているでしょうか?

squirrelyk
質問者

補足

すみません、ここら辺は勉強不足でして、DNSサーバというものがどういう働きをしているかは分かるのですが、実際にどこにどんな値を入れたらよいのかなどがわかりません。。。 例として、 search linux-beginner.com nameserver 192.168.0.1 を見つけたのですが、 このnameserverの後に入れる「DNSサーバーのIPアドレス」というのは、呼び出し元のPHPが置いてあるサーバーのものを調べて入れるのでしょうか? それとも何か共通のIPアドレスがあるのでしょうか?

関連するQ&A