Apacheサーバーで作業していますか?もしそうなら、あなたは自分の.htaccessファイルに以下を追加することができます:パラメータFDL = 1は、オクテットストリーム/力のダウンロード
として 出力をクエリ文字列である場合、それは をチェックし、ファイルの参照するには
RewriteCond %{REQUEST_FILENAME} -f
RewriteCond %{QUERY_STRING} fdl=1
RewriteRule .? - [T=application/octet-stream]
のチェックを今、あなたはブラウザだけでURLにパラメータを入れて、そのサイトには何もダウンロードを開始したいとき:
<a href="img.jpg?fdl=1">Download Image</a>
IISのWindowsサーバ上で同じことを行うには、web.configファイルへのアウトバウンドルールを追加します。
<?xml version="1.0" encoding="UTF-8"?>
<configuration>
<system.webServer>
<rewrite>
<outboundRules>
<rule name="Force Download">
<match serverVariable="RESPONSE_Content_Disposition" pattern=".?" negate="false" />
<action type="Rewrite" value="application/octet-stream" replace="true" />
<conditions>
<add input="{QUERY_STRING}" pattern="fdl=1" />
</conditions>
</rule>
</outboundRules>
</rewrite>
</system.webServer>
</configuration>
EDIT(2016年10月4日):
download
属性は、まだすべてのブラウザでnot fully adoptedであるように見えます。
JavaScript /ブラウザベースの実装では、サポートしていないブラウザで機能を保存するためのポリフィルであるFileSaver.jsを見ることができます。それは完璧なカバレッジを持っていません。
画像と一緒に提供されるヘッダーを変更してください。 –
@RichBradshaw素早く答えてくれてありがとう!今私は、http://www.electrictoolbox.com/image-headers-php/のような手掛かりを得ました。しかし、簡単なリンクで、そしてそれが押された後に、ヘッダを扱う簡単な方法はありますか?今は 'Download' –
いいえのようなリンクがあるので、ダウンロード属性はかなり新しく、多くの場所でサポートされていません。 –