[PHP-users 35438] Re: WebServiceの簡単なサンプルを作る【解決】

E.Inoue e_inoue @ jescull.jp
2010年 12月 10日 (金) 14:11:58 JST


井上です。
自己解決しましたので、ご連絡いたします。
結果として、サイトに付けていたアクセス規制(htaccess)を解除することで
実行可能となりました。
(エラーとならずに、Hello World!が表示された)

サーバは完成したらアクセス制限はなしにして、それまでは
自IPアドレスからのアクセスのみ許可にしておこう、と思っていたのですが、
それが影響していたようです。

自分のサーバの中だけでサービス展開しているつもりだったので
問題ないと思っていたのですが、そういうものではないのですね。
WEBサービスのもっと基本を勉強し直さなくてはいけないようです。
お騒がせいたしました。
アドバイス頂いた方、ありがとうございました。
失礼いたします。


> ネット上にhelloというフォルダを作り、その中にclient.phpとserver.phpを作成して、client.phpをブラウザで表示したところ、エラーメッセージが表示されました。
> faultcode:SoapFault exception: [HTTP] Forbidden in D:\CustomerData\webspaces\hoge\hello\client.php:9
>  
> できるだけシンプルな形にしたつもりなのですが、原因に見当がつかず困っています。
> 【client.php】---------------------------------------------
> $location = "http://".$_SERVER["SERVER_NAME"].dirname($_SERVER["PHP_SELF"])."/"."server.php";
> $client = new SoapClient(null,
>  array('location' => $location
>       ,'uri' => 'urn:SOAP-Sample'
>  )
> );
> try{
>  $result = $client->getMessage();
>  echo $result;
> }catch(SoapFault $e){
>  echo "fault:".$e;
> }
> 
> 【server.php】---------------------------------------------------
> function getMessage(){
>  return 'Hello, World!';
> }
> $server = new SoapServer(null, array('uri' => 'urn:SOAP-Sample'));
> $server->addFunction('getMessage');
> $server->handle();

-- 
E.Inoue <e_inoue @ jescull.jp>



PHP-users メーリングリストの案内