2011-01-08 7 views
0

私は現在、ポート80ですべての発信トラフィックをブロックしているWebホスティングWebサイトを使用しているので、fopenの仕事もカールもしませんが、wordpressは これは可能? 私が見てきたサーバーにファイルをダウンロードするにはWordPressのようなWordPressを使用してください

+1

プロキシを使用する必要がありますか?おそらく、WordPressの設定には何かがあります。 cURLは同じものを使用するように設定することができます... – Rob

+0

私はプロキシを使用して気にしません。とワードプレスは、プロキシを介して実行するように設定されていません.. – voldyman

+0

私は驚いてWordPressはFTPではなく、更新プログラムをダウンロードするHTTPを使用しています。 – Phoenix

答えて

0

plzのヘルプ.. ..私はワードプレスで使用される機能を複製し、PHPを使用してファイルを取得することを可能にすることができますだけでなく、インターネットからファイルを取得する必要がありますWordPressのコードを更新し、実際のファイルのダウンロードが行われるWP_Http classfile source)まで追跡しました。

GET/HEADリクエストのための順序はHTTP拡張、cURLの、ストリーム、FOPEN、そして最終的にfsockopenのです:優先機能が利用できない場合は、このクラスには、ファイルを取得するために多くの組み込みの方法のいずれかを使用します。

1つのシナリオは、あなたのホストが実際にポート80上のトラフィックをブロックするのではなく、cURLの拡張子を含め、共通のコード・インジェクションの脆弱性を防ぐために、falseにallow_url_fopenを設定しないことにより、困難なダウンロードファイルを作っていないことです。この場合、データを取得するための他の方法の1つを利用することによってWordPressが成功する可能性があります。このシナリオでは、PHPスクリプトを経由してファイルをダウンロードするためのオプションは、(優先順に)次のとおりです。あなたのホストではなくfopenやカールHTTP Extensionと使用をサポートしている場合

  1. を参照してください。
  2. wp-includes/class-http.phpを含めて使用し、スクリプト内でこれらの制限を回避するために使用してください。
  3. StreamsまたはFsockopenを通じてファイルのダウンロードを提供する別のライブラリを作成/使用します。

代替シナリオがあなたのホストがポート80上のトラフィックをブロックするですが、ワードプレスは、それ自体を更新できるようにするホワイトリストされているwordpress.orgを持っているということです。この場合、別のポートで何らかの種類のプロキシソリューションを設定することができない限り、不運になります。

+0

ポート80の発信トラフィックがファイアウォールによってブロックされているとは思わない – ajreal

関連する問題