![]() |
Магазин по продаже контента (php)
Коллеги! Нужна помощь в реализации защищенной клиентской зоны сайта и выдачи контента клиенту после оплаты. С оплатой, вроде, сам разберусь :). Т.е. на сайте есть папка (может, и не папка) с некими файлами, надо ее оградить от простых клиентов и дать доступ тем, кто прошел транзакцию оплаты. Как это сделать? Можно ссылку на алгоритм или, еще лучше, скрипт. На perl тоже сойдет.
ЗЫ. гугла допрашивал. Что-то в последнее время ничего толкового не выдает, одни стандартные инет-магазины :( |
имхо с PHP только редирект, или самим скриптом отдавать, если размер небольшой (после проверки оплаты). УРЛ на файл нужно делать динамическим (не постоянным), использованием mod_rewrite или более продвинутого модуля. Типовой реализации быть не может, ибо чревато легким взломом.
|
|
копать куда угодно, хоть через HTTP-аутентификацию на папку с файлами (после оплаты давать пароли). Можно скриптом проверять код оплаты, и редиректить непосредственно на файл. Прямую ссылку на файл можно сделать хитрой и непонятной (mod_rewrite).
если файл небольшой, можно отдать непосредственно скриптом (file_get_contents + заголовки Content-Type и т.д.). если б с помощью модуля типа mod_rewrite можно было проверить хеш, то другое дело... для апача не видел такого модуля, мб для других серверов есть... |
|
чтобы прямой ссылкой нельзя было поделиться... (редирект отловить можно)
|
можно перед редиректом на файл ставить какой-нибудь хитрый кук, а потом mod_rewrite проверять его наличие в запросе на файл.
|
Цитата:
|
mod_rewrite (или аналогичный модуль) позволяет проверить заголовок (в т.ч. наличие кукиса). Т.е. в случае отсутствия волшебного :) кукиса не отдавать файл... имхо так надежнее будет.
|
да, но тут выяснился еще один момент. Контент придется отдавать не мелкими файлами, а выделить целую зону (html файлы с flash-роликами). Так что rewrite, думаю, не справится, надо писать супер-эксклюзивную функцию. Попутно она должна проверять, не закончилось ли выделенное время (месяц, два или три) и соответственно, перенаправлять на страницу продления подписки.
ЗЫ. А нет ли где примерчика? По типу adult сайтов, с исходниками? Я что-то ничего не нашел, в основном, магазины по продаже реального товара. |
Нда, активность зашкаливает... Может, у кого есть пример обработки файла .htpasswd из php? Нужно туда добавлять или удалять юзеров с паролями, как это сделать из скрипта- не понятно (в гугле искал уже)
|
HTTP-аутентификация делается заголовками. htpasswd - это средствами сервера. Если скриптом, то и базу можно использовать.
|
Цитата:
Еще вопрос... Пароль выдается на какой-то срок, скажем, 30 дней. Надо оповещать клиента перед окончанием действия его пароля. Я сделал так - пишу в два поля timestamp и timestamp+30 дней. Затем через cron буду запускать скрипт, сравнивающий текущий timestamp и записаный в БД, ну и, соответственно, отправляющий мейл когда надо. Неэлегантно, но сравнительно просто. Есть у кого какие предложения? :) |
Цитата:
Цитата:
|
Цитата:
Цитата:
|
|
Цитата:
за Цитата:
|
|
Цитата:
|
Цитата:
В остальном, так сказать, "жизнь налаживается" - сделал уже админку с добавлением/просмотром юзеров в .htpasswd. Работает без проблем, апач пароль принимает, хотя и ругается типа "не мой пароль, но сойдет" :). UPD: Нашел другой скрипт, переделал, теперь у апача претензий нет. Если кому нужно - выложу. |
Нарисовалась проблема такого характера. Результат оплаты - это xml файл, который выдается банковским сервером. Если зайти вручную, браузером, то всё нормально, нормальный файл с данными. Мне нужно получить эти данные программно, я использовал вариант с прямым обращением к сокетам:
PHP код:
|
file_get_contents
|
хм, 443 - не SSL ли? Тогда нужно сертификатом как-то рулить...
ssl:// в fsockopen (https:// в file_get_contents - если обработчик есть). Нужен хотя бы openSSL... иначе погуглить готовые скрипты, где реализовано ssl-шифрование. |
Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
|
|
|
Время: 22:49. |
Время: 22:49.
© OSzone.net 2001-