![]() |
|
Модераторы: skyboy, MoLeX, Aliance, ksnk |
![]()
|
|
| SmartBot |
|
||||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 11.1.2009 Репутация: нет Всего: нет |
Доброго времени суток.
Задача: Имеется 2 сервера: files.com, на котором нет PHP, только HTML, сервер используется для хранения файлов. И website.com, где PHP есть. Нужно отдавать файлы на закачку только тем, кто оплатил доступ. Мое решение: После оплаты юзеру выдаются ссылки вида website.com/down.php?file=filename.rar down.php проверяет юзера, если проверка успешна, ставит куку и редиректит на файл
На сервере files.com (PHP нет) файл .htaccess содержит
Должен выдавать файл, если существет кука. В противном случае ошибка 403. Проблема: Сервер не отдает файл, ошибка 403. Почему? В setcookie() ведь указан сервер files.com. Этот метод работает, если файл находится на том же сервере, что и скрипт down.php Что можно использовать вместо куки? |
||||
|
|||||
| pizzz |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 14.12.2008 Где: Омск Репутация: 6 Всего: 8 |
Ну вобще естественно что куки не ходют между сайтами.
Есть вариант проверять реферер. Есть вариант указать ключ в ссылке. --------------------
Спасибо много, жмем кнопку репутация. Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады. |
|||
|
||||
| theworldcreator |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 362 Регистрация: 25.8.2007 Где: Москва Репутация: 10 Всего: 13 |
А почему просто не зашарить каталог на files.com(в котором файлы лежат) от всех кроме website.com и твой PHP скрипт, при наличие доступа, будет не редирект делать, а сам скачивать файл с сервера files.com и отдавать пользователю. Отдавать сам - это когда ты ставишь header с содержанием типа "я файл(а не php скрипт)" и содержимое файла отдаешь в поток вывода(ну в смысле что то вроде echo file_get_contents($url); Так делать не надо, это я просто показывал что значит отдать содержимое файла пользователю, а использовать file_get_contents() для таких целей - зло, пользуйтесь cURL).
|
|||
|
||||
| SmartBot |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 3 Регистрация: 11.1.2009 Репутация: нет Всего: нет |
theworldcreator, чтобы не грузить website.com файлы должен отдавать files.com
А если PHP скрипт будет отдавать, то докачка поддерживается? Файлы по ~150Мб pizzz, каким образом можно обработать ключ в ссылке без PHP с помощью .htaccess и отдать файл? Это сообщение отредактировал(а) SmartBot - 11.1.2009, 11:01 |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: 75 Всего: 260 |
||||
|
||||
| pizzz |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 238 Регистрация: 14.12.2008 Где: Омск Репутация: 6 Всего: 8 |
htaccess проверяет если ссылка состоит из http://site.ru/name=ИМЯ ФАЙЛА&kod=КОД В htaccess жестко защит код, и он должен быть обнаружен в ссылке. Какая задача, такое вот решение --------------------
Спасибо много, жмем кнопку репутация. Извините меня за орфографические ошибки, я стараюсь не ошибаться, а они все равно просачиваются гады. |
|||
|
||||
| theworldcreator |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 362 Регистрация: 25.8.2007 Где: Москва Репутация: 10 Всего: 13 |
Только если реализовать ее самому. Или можно поступить так: ставим nginx, настраиваем его так, чтобы он обращался к скрипту и если скрипт дает добро отдавал файл. Тогда все фишки вроде докачки возьмет на себя nginx. Но таки весь трафик будет проходить через сервак с PHP и nginx-ом. Сам я так не делал, но видел в нете(сейчас уже не вспомню точное место) толковую статью по подобной настройки этого сервера. |
|||
|
||||
![]()
|
| Правила форума "PHP" | |
|
|
Новичкам:
Важно:
Внимание:
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, IZ@TOP, skyboy, SamDark, MoLeX, awers. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | PHP: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |