(8)執行格式錯誤:透過apache存取檔案時執行'/usr/local/download/abc.zip'

(8)執行格式錯誤:透過apache存取檔案時執行'/usr/local/download/abc.zip'

我已經配置了mod-auth-token在 Linux 伺服器上安裝 Apache。
我已將其配置為在從伺服器下載時啟用存取檔案的安全性。網站在這裡)。

阿帕契配置:

ScriptAlias /downloads/ /usr/local/download/
<Location /downloads/>
  AuthTokenSecret       "SECURESTR"
  AuthTokenPrefix       /downloads/
  AuthTokenTimeout      86400
</Location>

我已經透過簡單的java程式產生了用於從伺服器下載檔案的URL(與給出的範例相同這裡)。
我有以下 URL 來存取文件
http://download.mysite.com/downloads/9fa653c32af806ba6f43d1a1fb73bfd0/5370c3b3/abc.zip

文件abc.zip位於/usr/local/download/資料夾中。

當我嘗試存取/下載該文件時,出現以下異常

[Tue May 13 02:07:28 2014] [error] (8)Exec format error: exec of '/usr/local/download/abc.zip' failed
[Tue May 13 02:07:28 2014] [error] Premature end of script headers: abc.zip  

我不知道有什麼問題。有人知道如何解決這個問題嗎?

答案1

你有ScriptAlias /downloads/ /usr/local/download/,它告訴 Apache 將 /usr/local/download 中的所有檔案作為 CGI 腳本運行,而不是僅僅提供它們。這就是為什麼它說exec of '/usr/local/download/abc.zip' failed。看腳本別名

解決辦法是替換ScriptAliasAlias.

相關內容