Мне нужно, чтобы люди не скачивали .zip
файлы на моем сервере, если они не вошли в систему. Для этой цели и поскольку я также использую MediaWiki, и мне бы хотелось изменить это как минимум, так как я не знаком с этим, я подумал сделать следующее:
Когда пользователь хочет загрузить .zip
файл, он будет перенаправлен сервером (с web.config
правило) что-то вроде download.php?file=fileName
и внутри PHP я могу программировать, чтобы увидеть, вошел ли он в систему, а затем использовать readFile (), чтобы передать ему файл.
Однако я не знаком с IIS (не намного больше с Apache) и совершенно не знаю, как написать это правило. Может ли кто-нибудь помочь мне в этом?
Я также открыт для других предложений. Размещение папки для загрузки в месте, недоступном для общественности (но для сервера), может помочь, но изображения также загружаются, а затем они не будут загружаться. Я мог бы снова изменить поведение системы загрузки, но, как это делает MediaWiki, я бы предпочел этого не делать.
Я нашел этот код (с помощью .htaccess
в web.config
онлайн переводчик) но он не работает. Может быть, вам проще исправить этот код:
Загрузки находятся в подкаталогах внутри / images, например, /images/a/ae/file.zip, и мне бы хотелось, чтобы при попытке открыть вы перенаправлялись в php-файл, где в качестве GET-ввода у меня есть местоположение файла.
Решение я принял: http://pastebin.com/7skGT9uN
Он перенаправляет все, что заканчивается в .zip внутри / images, в download.php? FileName = куда бы ни часть / images не передавалась.
Других решений пока нет …