#.htaccess #security
Вопрос:
Я хочу обезопасить и скрыть свою папку с активами от огласки. Я слышал, что это можно сделать с .htaccess
файлом и изменить имя с моего directory-name
на случайное имя каталога, и в этом случае пользователи не смогут узнать настоящее имя моего каталога, помещенного в мой public_html. Может ли кто-нибудь помочь мне с примерами всех видов документации? Я ничего не пробовал, потому что у меня действительно плохие знания в области .htaccess
программирования. Любая помощь будет благодарна.
Ответ №1:
Ну, вы можете это сделать, но мне любопытно, какова цель, если это просто для того, чтобы случайно «скрыть» базовый каталог файлов? Это на самом деле не обеспечивает никакой дополнительной «безопасности», а также может вызвать проблемы, если у вас есть внешний прокси-сервер, предназначенный для обслуживания статического контента. Это также может быть проблематично, если вы используете CMS, такую как WordPress, поскольку вам может потребоваться изменить поведение по умолчанию. (Хотя могут быть и другие проблемы развития, для решения которых вы бы предпочли это сделать.)
В идеале вы бы сделали что-то подобное с Alias
директивой в конфигурации основного сервера (или контейнере vHost).
В .htaccess
вы можете внутренне переписать запрос, используя mod_rewrite. Допустим, вы ссылаетесь /assets
на URL-адрес, но фактический каталог файловой системы, к которому он должен быть привязан, — это /secret
то, что вы могли бы сделать следующее, чтобы просто переслать все запросы /secret
:
RewriteEngine on
RewriteRule ^assets/(. ) secret/$1 [L]
/assets/<something>
Будут перенаправляться только запросы на. Запрос /assets
или /assets/
просто приведет к 404 (при условии, что этот каталог на самом деле не существует).
Чтобы быть более избирательным и направлять запросы только на определенные типы файлов в зависимости от расширения файла, вы можете сделать что-то вроде следующего:
RewriteRule ^assets/(. .(?:jpg|webp|gif|css|js))$ secret/$1 [L]
Вы также можете проверить, существует ли целевой файл на самом деле, перед перезаписью, но в этом, как правило, нет необходимости, и этого лучше избегать, поскольку проверка файловой системы обходится относительно дорого.
Комментарии:
1. Это мне очень помогло. Большое спасибо, друг.