当社の製品は eBook であり、暗号化されたダウンロード リンクを生成する WordPress 用のhttp://www.tipsandtricks-hq.com/ eStore プラグインを介して .epub と .mobi の両方の形式で配信されます。
問題は約 5 日前に突然始まり、以前は約 3 か月間正常に機能していました
顧客がダウンロード リンクを介して購入したものをダウンロードすると、すべての .epub ファイルが破損し、ePub をライブラリにインポートしようとすると Adobe Digital Editions でエラーが発生する
ダウンロードしてKindleにロードすると、すべての.mobiファイルが破損し、Kindleで同様のエラーが発生する
Google の URL 短縮サービスをオフにしようとしましたが、エラーが発生しました
IE、Chrome、Firefox でリンクをテストしましたが、エラーが発生しました
ブラウザの直接リンクを介してファイルをダウンロードすることにより、暗号化されたリンクなしでテストしましたが、正常に動作し、エラーはありません
私たちが学んだこと:
FTP を使用して ASCII モードとバイナリ モードの両方でダウンロードをテストしました ... ASCII では、暗号化されたダウンロード リンクを使用した場合と同じエラーが発生します
FTP で転送されたファイルは、ASCII とバイナリを使用した後は同じサイズですが、ハッシュ チェックを実行すると、内容が異なることが示されます
FileZilla を使用して、PC と Mac の両方で FTP 経由でテストしていますが、エラーは PC でのみ発生します。
そのため、この問題はファイル転送の種類と PC に関係していると想定しています
/home/foo/bar/wp-content/plugins/wp-cart-for-digital-products/download.php に header("Content-Transfer-Encoding: binary"); が表示されます。そのため、暗号化されたリンクを使用するときにバイナリが強制されていると想定しています
暗号化されたリンク文字列に ASCII を強制する文字が含まれている可能性はありますか? 暗号化されたリンクの例を次に示します。
https://fu.com/bar/download.php?file=LRtro6WQMN12ip%2BEcL0TYS8sMZmSKOlkRedVCZyfACsqSllzCAjDp%2FZJyfQ2oq0ZP6vg1EMrR%2FOFC4B3wGDHl3N0u0sulcBhIfkOJ0C0UQh6
そして、ここに http ヘッダーを見てください。
Status: HTTP/1.1 200 OK
Date: Wed, 27 Feb 2013 14:55:47 GMT
Server: Apache
X-Powered-By: PHP/5.3.17
Set-Cookie: PHPSESSID=7d61c9dd6ecbd321bea8cffg4a25d5e8; path=/
Expires: 0
Cache-Control: public
Pragma: public
X-CF-Powered-By: WP 1.3.9
Content-Description: File Transfer
Content-Disposition: attachment; filename="Some-File-Name-Which-Was-Replaced.epub"
Content-Transfer-Encoding: binary
Content-Length: 5088032
Connection: close
Content-Type: application/epub+zip
他に何がこれを引き起こしている可能性がありますか? サーバーが .htaccess または apache 構成設定で ASCII を強制している可能性はありますか?
どうもありがとうございました