Хорошо, у нас есть сайт подписки на нашем выделенном сервере. Мы кормите контент для плательщиков, которые обращаются к сайту через нашу страницу входа. Подписки обрабатываются сторонним биллером, который пишет новую информацию о члене в базу данных на нашем сервере. Идентификация пользователя выполняется с использованием базы данных MySQL, а не .htaccess / .htpassword. Причина этого заключалась в том, что многие исследования показали, что подход .htaccess / .htpassword был небезопасным (передача информации пользователя через обычный текст) и что он не предоставляет пользователю возможности выйти из системы. Таким образом, проверка подлинности базы данных через MySQL. Все отлично работает.
Кроме того, у нас есть проблема в том, что папки, содержащие контент только для членов, должны быть защищены от всех, кто вводит полный путь к файлу и имя файла, чтобы получить доступ к загружаемому контенту, тем самым минуя наш веб-сайт.
Итак, мы отправились на хост и записали пользовательский файл .htaccess. Мы должны были сделать это в интересах времени, и они заявили, что знают об этом, поэтому мы наняли их, чтобы написать файл .htaccess.
Первая итерация: он перенаправляет каждый пользовательский логин обратно на страницу index.php, а не разрешает доступ к области участников. Однако прямой доступ к файлам был заблокирован.
Вторая итерация: доступ членов к области участника был восстановлен, и снова содержимое было уязвимым для прямой загрузки.
Третья итерация: успешный доступ к области участника. Доступ к содержимому заблокирован для прямого доступа к браузере. ОДНАКО, ВСЕ файлы .jpg, которые раньше отображались с каждым из файлов загрузки в области участника, теперь были сломанными ссылками. Все миниатюры в связанных галереях загружаемых файлов теперь не работают, что препятствует просмотру больших изображений, которые они представляют.
ЗАКЛЮЧЕНИЕ: Хост отказывается от сделки, заявляя, что то, что мы хотим, не может быть сделано. Напомним, что мы хотим:
Позвольте нашим зарегистрированным членам получить доступ к нашей области, используя нашу страницу входа.
Предотвращение прямого доступа к нашему контенту через браузеры.
Разрешение всех изображений .jpg для отображения с файлами загрузки и в галереях миниатюр.
Они утверждают, что этого не может быть сделано, мое подозрение в том, что они не знают, как это сделать. Конечно, в Интернете есть много сайтов подписки, которые используют файлы .htaccess для защиты своего контента.
ДОПОЛНИТЕЛЬНАЯ ИНФОРМАЦИЯ: У нас есть сертификат SSL для этого домена. Может ли это вызвать проблему? Должен ли файл .htaccess защищать содержимое области нашего участника в папке области участника, а не в корневом каталоге (как и сейчас, и не сделает ли код кодирования файла .htaccess менее сложным?)?
Я с трудом верю, что то, что мы просим сделать, не способно.
Пожалуйста, порекомендуйте. Любая помощь будет серьезно оценена.
Пропустите маршрут .htaccess
. Сохраните имена файлов для «содержимого участника» в MySQL. Затем используйте .php для ссылки на них только для «членов». PHP будет знать только идентификацию информации, но не фактические имена файлов. EG MySQL index #, дата хранения, идентификатор участника – все это может быть использовано для генерации (и извлечения) уникального имени файла, которое вы никогда не выставляете.
Я сделал это раньше в Java, используя сервлеты в части 'src =' тега img. Я ожидаю, что PHP предлагает нечто сопоставимое.