У меня проблема с X-Sendfile на Apache на Debian с ownCloud. Когда я хочу скачать один файл, я получил ошибку:

Запрашиваемый URL /owncloud/index.php/apps/files/ajax/download.php не найден на этом сервере.

Моя конфигурация в sites-enabled/000-default000-default-ssl) - это корневой каталог веб- сервера /media/usb/www/ а папка данных ownCloud - /media/usb/owncloud/data

<Directory /media/usb/www/owncloud>
    Options -Indexes FollowSymLinks MultiViews
    AllowOverride None
    Order allow,deny
    allow from all
    SetEnv MOD_X_SENDFILE_ENABLED 1
    XSendFile On
    XSendFilePath /tmp/oc-noclean
    XSendFilePath /media/usb/owncloud/data
</Directory>

2 ответа2

1

Хотя прошло пять месяцев ...

Ваш конфиг, кажется, в порядке. Вот мой, который работает (после изменения XSendFilePath):

<Directory /home/usr/public_html/oc>
  AllowOverride All
  Satisfy Any

  <IfModule mod_xsendfile.c>
    SetEnv MOD_X_SENDFILE_ENABLED 1
    XSendFile On
    XSendFilePath /home/usr/data/owncloud
  </IfModule>
</Directory>

ownCloud запускается из /home/usr/public_html/oc а соответствующие данные находятся в /home/usr/data/owncloud

Не забудьте перезапустить Apache

service apache2 restart
0

Так же, как обновление: поддержка XSendfile была удалена с ownCloud 8.2.0 - для получения более подробной информации см. Https://github.com/owncloud/core/issues/18870 . Это необходимо сделать, потому что в противном случае правильная блокировка невозможна.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .