(8) Ошибка формата выполнения: выполнение «/usr/local/download/abc.zip» при доступе к файлу через Apache

(8) Ошибка формата выполнения: выполнение «/usr/local/download/abc.zip» при доступе к файлу через Apache

Мне пришлось настроитьмод-аутентификация-токенв Apache установить на Linux сервере.
Я настроил его, чтобы включить безопасность в файле доступа во время загрузки с сервера. (Как указано на егосайт здесь).

Конфигурация Apache:

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

Я сгенерировал URL для загрузки файла с сервера с помощью простой программы Java (которая такая же, как в приведенном примере)здесь).
У меня есть ниже 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. СмотритеScriptAlias.

Решение — заменить ScriptAliasна Alias.

Связанный контент