ホームページ  >  記事  >  バックエンド開発  >  IIS が PHP で記述された Web サービスにアクセスすると、404 エラーが報告されますが、自分のマシンは応答してデータをサーバーに記録できます。

IIS が PHP で記述された Web サービスにアクセスすると、404 エラーが報告されますが、自分のマシンは応答してデータをサーバーに記録できます。

WBOY
WBOYオリジナル
2016-06-23 13:54:121029ブラウズ

サーバー win7、同じマシン上の 2 つの Web サイト、
Web サイト 1 は ASP.NET によって作成され、IIS ポート 8080 で公開されます
Web サイト 2 は PHP によって作成され、同じマシンの APACH 、ポート 80 で公開されます

2 つのサイトすべてにアクセスでき、ログインでき、データのやり取りに問題はありません。ただし、.net が PHP の WEBSERVICE を呼び出すと、HTTP 404 エラーが報告されます。
ローカルで実行できますが、設定に問題がありますか?

至急、オンラインでお待ちください。


ディスカッションに返信(解決策)

404 はページが存在しないことを意味します。呼び出したアドレスが正しく書かれているかどうかを確認してください。

404 は、呼び出したアドレスが間違っているかどうかを確認してください。



記述には何も問題はありません。私のローカル コンピューターでは、.NET はサーバー上の PHP を呼び出し、PHP はサーバー上の .NET を呼び出します。通常は

wsdl は正しいですか?

wsdl は正しいですか?



正しくは、サーバー上の WSDL を直接参照しています

現在の状況は次のようになります。2 つのコードセットは同じマシン上にデプロイされており、Web サイト上で相互に直接データを作成します。 WEBSERVICE に接続すると、機能しません。 PHP コード内の WSDL アドレスを localhost に変更すると、PHP データを .net とやり取りできるようになります。ただし、将来的には、2 セットのコードが 2 台のマシンに別々に配布されることになります。サーバー側のルーティングの問題でしょうか?

もう一つの現象は、コードを変更する前(localhostに変更する前)は、データを作成するためにサイトにアクセスしたとき、双方のデータにアクセスできませんでしたが、日本人が日本でデータを作成した場合はアクセスできましたサイト経由でも非常に高速です。

それはあなたのクライアントの書き方が間違っていませんか?

それはあなたのクライアントの書き方が間違っているのではないでしょうか?



しかし、私のローカル PHP クライアント コードもサーバー IP アドレスを呼び出し、データは同期されます。 。サーバーに投稿されたコードはローカル コードと同じであることがわかりましたが、サイトを同期できません。その後、サーバー コードを LOCALHOST に変更してみました。.NET コードもローカルに配布されていたため、サイトを同期できました。その後、サーバー上でIEを開いてサイトにアクセスしましたが、やはりアクセスできませんでした。ルーティングの設定に問題があるのでしょうか?コードには何も問題はないはずです

クライアントの記述が間違っているからではないでしょうか?



これで .NET がデータを渡すことができます。それとも APACH または IIS の構成に問題がありますか?

そこでルーティング設定について質問しました。 。 。ノットステッカー

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。