問題タブ [fsockopen]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
php - PHP fsockopen() : ローカル テスト サーバーとリモート サーバーの比較
私が見逃しているapache/phpについての癖があることを願っています。
コード:
機能: fsockopen 関数を使用して、さまざまな minecraft サーバーへの接続を確認します。
問題: このコードは、ローカル Web サーバーとリモート Web サーバーの両方で実行するはずのことを正確に実行します。ただし、リモート サーバーでは、UP であることがわかっている場合でもステータスは常に DOWN と表示され、ローカル サーバーでも UP と表示されます。私のホストがこれらのサーバーにアクセスできない理由がわからないので、私が知らないサーバーの癖であることを願っています。
どのようにあなたが助けることができるか: 私が使用できる php で IP を効果的に ping する別の方法があるでしょうか? または、私の接続に影響を与えているサーバー設定を知っているかもしれません。
読んでくれてありがとう〜TylerTofWA
php - 無関係な文字を返すfsockopen()を介したHTTPGETリクエスト
fsockopen()
別のサーバーのページから値を要求するために使用しています。返される値は1つの単語です(例:「フランス語」)。これは、ローカルホスト(MAMP)でテストし、リモートサーバーにリクエストを送信するときに正常に機能します。ただし、サーバー間をテストすると、次のような余分な文字が表示されます。
6%0D%0AFrench%0D%0A0%0D%0A%0D%0A
また
7%0D%0AEnglish%0D%0A0%0D%0A%0D%0A
ここに示されているhttp_request()関数を使用しています。私が行った唯一の変更は、タイムアウトを増やすことでした。私はそれを使用して呼んでいます:
$thelanguage = http_request('GET', $domain, 80, $path);
これを複数のサーバーとの間でテストしましたが、ローカルホスト以外の場所からリクエストを行うと、余分な文字が表示されます。
どうすればいいのか途方に暮れています。返される文字列の先頭の6または7は文字数のようですが、それがどこから来ているのかわかりません。どんな助けでも大歓迎です。
configuration - PHP fsockopen() で SSL を有効にする
PHP fsockopen() を使用して、サーバーと PayPal 間の支払いを確定しています。ただし、SSL 接続を使用しようとすると、次のエラーが発生します。
fsockopen() メソッドへの呼び出しは正しいと確信しています。開発サーバーで PHP をアップグレードする前は正しく機能していたからです。
この接続は暗号化されていることが重要なので、これを回避することはできません。
php.ini ファイルに fsockopen() SSL 接続に関する設定が見つかりません。誰か私をそこに案内してもらえますか?
助けてくれてありがとう、
spryno724
php - fsockopenhttpsfgetsでフリーズ
PHP fsockopenを介してサーバーに接続し、最初に基本認証用のCookieを取得してから、応答のLocationヘッダーで定義されたストリーミングサーバーに永続的に接続しようとしています。
問題は、私のコードがfgetsでフリーズし、宛先サーバーから応答データを受信しないことです。Amazonec2インスタンスのポート443でhttps経由で接続しています。サーバーは、サーバーのターミナルのcurlまたはchomeブラウザーを介して正常に接続します。
何かご意見は?
php - PHP fsockopen()
簡単な簡単な質問名前の代わりにfsockopen()関数でホストのIPを渡すことはできますか?2つのサーバー間の接続を設定する必要があり、今は同じコンピューターで作業する必要があります。これまでfsockopenを使用したことはありません。簡単な例をいただければ幸いです。よろしくお願いします=)
php - fsockopenとcurlのどちらがより良いアプローチですか?
自動定期請求のアプリを作成しています。
リクエストをサーバーに送信するためにどのオプションを選択すればよいか教えてください
- fsockeopen
- カール
そして、なぜ一方が他方よりも優れているのですか?
php - fsockopen 経由で wordpress プラグインのプロキシ経由で接続中にエラーが発生しました
クラスIXRでコアワードプレスクラスIXR_Clientを使用するワードプレスの統計プラグインを使用しています。ドキュメントによると、wp-config.php にあるプロキシ構成を使用していますが、fsockopen と同じホストのアドレスを使用しているため、方法がわかりません (fsockopen を見ると、プロキシ アドレスである必要があります)。
プロキシを指すように fsockopen を変更し、プロキシから応答を受信するようになりましたが、「TCP_DENIED/400 4139 POST エラー: 無効な要求 - NONE/- text/html」がプロキシ ログに表示され、プロキシエラーを返します。プロキシのリクエストを適切にラップしていないと感じています。
リクエスト: (一部変更)
さらに情報が必要な場合はお知らせください。
乾杯
php - fsockopenを使用してxmlサイトマップからURLをロードする方法
事前にキャッシュしてユーザーエクスペリエンスを高速化するために、sitemap.xmlファイルの各URLを読み込もうとしています。
サイトマップからURLを取得する次のコードがあります
そして今、fsockopenを使用して各URLを順番にロードしようとしています。
ここで、$ urlは次の形式です: http://onlineservices.letterpart.com:80 / content / en / FAMILY-201103311115 / Family_FLJONLINE_FLJ_2009_07_4
しかし、これは私に各URLに対してこのエラーを与えています:
[2011年5月12日13:34:09]PHP警告:fsockopen()[function.fsockopen]:http://onlineservices.letterpart.com:80/content/en/FAMILY-201103311115/Family_FLJONLINE_FLJ_2009_07_4に接続できません: -1(32行目の/home/digital1/public_html/dev/sitemap.phpでソケットトランスポート "http"が見つかりません-PHPを構成したときに有効にするのを忘れましたか?)
「fsockopen呼び出しのURLではなく、ホスト名だけです。実際のHTTPヘッダーのホスト/ポートを差し引いたURIを指定する必要があります」と読みました。
だから私はこれを試しました:
しかし、それでも同じエラーが発生します。
編集:
fsockopen呼び出しを次のように変更した場合:
それから私はわずかに異なり、より良いが、それでも間違った応答を得る。onlineservices.letterpart.comセクションを無視してhttp:/// content /を試しているようですが、次のように追加されています:/web/ui.xql?action=html&resource=login.htmlURLの最後にログインページなので、サーバーが表示されている必要があります...
HTTP / 1.1 302一時的に移動日付:2011年5月12日木曜日14:40:02 GMTサーバー:Jetty / 5.1.12(Windows 2003 / 5.2 x86 java / 1.6.0_07有効期限:1970年1月1日木曜日00:00:00 GMT Set-Cookie:JSESSIONID = nh62zih3q8mf; Path = /場所:http:///content/en/FAMILY-201103311115/Family_FLJONLINE_FLJ_2009_07_4/web/ui.xql?action = html&resource = login.html Content-Length:0
ありがとう。
php - fsockopenを使用してページを取得すると、返された文字列に数値が追加されます
これは非常に奇妙なことです。一部のページではHTMLが正常に返され、その他のページでは返される文字列()の最初と最後に数値が追加されます$out
。
例えば..
php - fsockopen() を使用して、パスワードを使用して Telnet 接続を開くにはどうすればよいですか?
Telnet 機能を使用してカメラにアクセスしたいと考えています。問題は、パスワード保護があることです。telnet 10.30.blah.blah
これは、プロンプトが表示されたらパスワードを入力するだけなので、ターミナル経由で行う場合は問題ありません。しかしphpでは、パスワードを入力する機会が見当たりません。
誰にもアイデアはありますか?
更新:@Cfreakが言ったように、fputsを使用してパスワードを出力しようとしましたが、それでも役に立ちませんでした。スクリプトがターミナルで試行していることを正確に実行すると、機能します。コードは次のとおりです。
更新:変数\r
の最後に a が必要であることがわかりました。$msg
助けてくれてありがとう!