これには簡単な答えがあると確信しています。
ダウンロードしようとするとエラーが発生するdocxファイルがあります(ドキュメントが見つかりません)。docは問題ありません。txtも問題ありません。これは単なるiis設定であり、サーバーのアクセス許可はすべてのファイルに対して同じであると確信しています。
はい、それはIIS設定:デフォルトでは、 拡張子が定義されたMIMEタイプに一致するファイルのみを提供します です。
.docxファイルのダウンロードを許可するには、上記のリンク先のKB記事の手順に従ってください。
KBの記事では汎用のapplication/octet-stream MIMEタイプを使用していることに注意してください。通常は動作するはずですが、application/mswordなど、より具体的なMIMEタイプが存在する場合は、常にそれを使用するのが最善です。
上記のソリューションのステップ5で、あなたは言った
[MIMEタイプ]ボックスに、application/mswordと入力します。
「application/msword」MIMEタイプは、Word 2003の「.doc」ファイルのタイプです。 Word 2007 ".docx"ファイルの正しいMIMEタイプは次のとおりです。
application/vnd.openxmlformats-officedocument.wordprocessingml.document
this postを参照してください。
これは非常に便利です。
興味がある場合は、.pptx(PowerPoint 2007)のMIMEタイプは
application/vnd.openxmlformats-officedocument.presentationml.presentation
および.xlsx(Excel 2007)は
application/vnd.openxmlformats-officedocument.spreadsheetml.sheet
[これらは転置された。スヴェンを指摘してくれてありがとう。]
IIS(6.0以降)の拡張子に関連付けられたMIMEタイプがない場合、404が表示されます。 静的ファイルのリクエストは404エラーを返します(IIS 6.0) 。(Edit:元のMSDNリンクは2017年半ばに廃止されました Internet Archiveにはコピーがあります 。 IIS6向けに作成されたにもかかわらず、この情報は最新のIISバージョンに適用されます。)
それ以外で、whereを指定しなかったという理由だけでエラーが表示されます:ヘッダーでのキャッシュを禁止すると、クライアントで同様の動作が発生する場合があります。ただし、これは一般的な問題であり、.docxに限定されません。