Localhostで自動プラグインアップデータを動作させようとしています。ライブサーバーのある時点で動作していましたが、何らかの理由で更新中にエラーが発生しました。
テストプラグインの更新中にエラーが発生しました:ダウンロードに失敗しました。有効なURLが指定されていません。
エラーメッセージの上とログに表示されるURLをテストしました。どちらもすぐにプラグインを含むZipファイルをダウンロードします。
http://127.0.0.1/white/check-plugins/plugins/test-plugin.Zip
下記のオブジェクトは plugins_api
フィルタに渡されます。
stdClass Object
(
[slug] => test-plugin.php
[path] => test-plugin/test-plugin.php
[name] => Test Plugin
[new_version] => 2.0
[last_updated] => March 20, 2015 04:27pm
[sections] => Array
(
[description] => test
[changelog] => <strong>test</strong>
)
[download_link] => http://127.0.0.1/white/check-plugins/plugins/test-plugin.Zip
)
そのため、URLに直接アクセスしてZipにアクセスでき、そのオブジェクトがWPが他のプラグインから受け取ったものにほぼ対応しているようであれば、これら2つの要因が問題はlocalhostに関係があると考えます。
プラグインのパスはインストールファイルと一致します。
www\black\wp-content\plugins\test-plugin
編集::エラーが発生したURLをたどってZipファイルをブラウザにダウンロードし、問題がないことを確認してからそのZipを私のblack
WPプラグインにインストールします。 。本当にlocalhostのようです。
つまり、whiteは更新されたプラグインを保持し、blackは古いプラグインを持ち、新しい更新を取得するためのリクエストを送信します。
渡しているオブジェクトに何か足りないのでしょうか。これに影響を与える可能性があるローカルホスト上にあるWordPressへの注意点はありますか?
結局のところ127.0.0.1
とlocalhost
の間に違いがあります。リクエストを次のように変更したら
http://localhost/white/check-plugins/plugins/test-plugin.Zip
そしてIPバージョンの他のいくつかの例では、アップデートは魅力のように働いた。スタックオーバーフローは、これがなぜ可能性があるのかについていくつかの良い答えを持っています: 127.0.0.1とlocalhostの違いは何ですか?