Назад | Перейти на главную страницу

Apache скрывает определенные типы файлов из Интернета

У меня есть репозиторий файлов с расширениями .php, .sh и .txt, который извлекается в веб-каталог моего сервера (/ var / www). Мне нужно, чтобы файлы .php можно было получить, введя URL-адрес, но я хочу, чтобы файлы .sh и .txt были доступны только изнутри, то есть их можно читать и запускать с помощью php или cron, но никогда с помощью пользователь вводит свой URL. Как я могу это сделать на Apache? Нужно ли мне устанавливать разрешения для файлов на что-то, связываться с .htaccess или делать что-то еще?

В верный способ сделать это - переместить файлы вне корня вашего документа - вы просто сбой конфигурации вдали от утечки данных, что никогда не бывает забавным местом. Посмотрите на любой современный фреймворк веб-приложений для примера и исполнения.

Однако для этого в Apache вы просто используете LocationMatch директива в соответствующем контексте:

<LocationMatch \.sh$>
    order deny,allow
    deny from all
</Location>