Форум программистов, компьютерный форум, киберфорум
Apache, htaccess
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/25: Рейтинг темы: голосов - 25, средняя оценка - 4.88
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360

Htaccess перенаправить все запросы, кроме запрашиваемых файлов из определённой директории

16.05.2019, 21:18. Показов 5324. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте! Напишите пожалуйста правило для htaccess-a, по которому все запросы будут перенаправлены на index-ный файл, кроме тех, которые запрашивают файлы из определённой директории. Своими силами никак не могу справится.
Для примера я хочу отдать файл /public/*.* но перенаправить если будет запрошен файл /temp/*.*
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
16.05.2019, 21:18
Ответы с готовыми решениями:

Перенаправить все запросы кроме v2
Добрый день! все запросы идут на /index.php RewriteRule ^(.*)$ /index.php мне нужно что бы запросы /v2/ шли на...

В определенной директории, прочитать все имена файлов и создать папки, с названиями этих файлов
В общем Моя задача, в определенной директории, прочитать все имена файлов и создать папки, с названиями этих файлов. Вот код: namespace...

Перенаправление в .htaccess. Как все запросы к файлам в одной папке перенаправить к файлам в другой папке
Здравствуйте, нужно сделать второй сайт, который будет почти копией существующего. оба сайта на одном хосте первый сайт лежит в...

6
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360
17.05.2019, 12:36  [ТС]
Слишком простой вопрос или такое не возможно осуществить средствами .htaccess?

Добавлено через 2 часа 3 минуты
Изучив информацию на этом сайте http://htaccess.net.ru понял как ограничить доступ по расширению файла
Code
1
RewriteCond %{REQUEST_FILENAME} !(\.*\.png|\.jpg|\.gif|\.jpeg|\.bmp|\.css|\.ico|\.js)$
Но когда хочу ограничить доступ по расширению и директории, ничего не получается. файлы читаются с любой папки, только по расширению фильтр идет. Что делаю не так?
Code
1
RewriteCond %{REQUEST_FILENAME} !(^/public/\.*\.png|\.jpg|\.gif|\.jpeg|\.bmp|\.css|\.ico|\.js)$
0
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
17.05.2019, 13:29
А чем не подходит стандартный вариант со сменой document_root?
0
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360
17.05.2019, 13:39  [ТС]
Цитата Сообщение от Jodah Посмотреть сообщение
А чем не подходит стандартный вариант
Я в php, наверное, с недельку смотрю в свободное время. Поэтому то, что для вас стандарт - для меня новинка и неизведанные дебри.

Если я правильно понял вы мне предлагаете поменять точку входа на сайт, но я не пойму зачем мне это? Если не правильно понял, не могли бы вы по подробней объяснить?
0
Эксперт PHP
3900 / 3238 / 1353
Регистрация: 01.08.2012
Сообщений: 10,914
17.05.2019, 13:43
Sternman, часто делают так - весь проект лежит в корневой папке сайта (которая site.ru/), а те файлы, которые должны быть доступны пользователю, выносятся в site.ru/public/.

С правилами Apache и его адовым синтаксисом редко кому хочется возиться.
1
62 / 63 / 28
Регистрация: 10.01.2018
Сообщений: 360
17.05.2019, 14:50  [ТС]
Jodah, Я так и пытаюсь сделать. Только немного другим способом. Идею понял, буду пробовать реализовать

Добавлено через 1 час 3 минуты
Цитата Сообщение от Jodah Посмотреть сообщение
часто делают так
Не стал так делать. Постоянная путаница с путями к файлам, во время написания кода, пугает.
Но, после прочтения ,в 10й раз, документации по RewriteCond получилось написать это
Code
1
2
3
4
RewriteCond %{REQUEST_FILENAME} !(\.png|\.jpg|\.gif|\.jpeg|\.bmp|\.css|\.ico)$ [OR]
RewriteCond %{REQUEST_URI} !(^/public/)
 
RewriteRule (.*) index.php [L,QSA]
Вроде как идеально перенаправляет.

Кстати не знаю почему [OR] если по логике подходит [AND] но такого условия не существует судя по всему для htaccess. Но главное что работает.
0
 Аватар для Строитель
1084 / 746 / 364
Регистрация: 09.07.2018
Сообщений: 1,760
17.05.2019, 14:59
Цитата Сообщение от Sternman Посмотреть сообщение
Кстати не знаю почему [OR] если по логике подходит [AND]
Я в .htaccess не помощник, но хорошо разбираюсь в регулярных выражениях. Так вот оператор [OR] в регулярках работает как [AND]. Собственно это и объясняет отсутствие последнего.
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
17.05.2019, 14:59
Помогаю со студенческими работами здесь

.htaccess -Запретить доступ к директории и ее файлам для всех, кроме одного домена
Подскажите, как настроить .htaccess. Есть несколько доменов, которые прикреплены к одной директории на сервере: site1.ru site2.ru ...

Перенаправить все запросы на один скрипт
Можно как-то стандартными методами сделать, что-бы все страницы проходили через один скрипт. Тоесть независимо от того, иду я в index.jsp ,...

.htaccess - запрет исполнения файлов в директории
Как запретить выполненение скриптов или CGI в определенной папке (upload)? Разрешить только для скачивания из нее? Есть вариант: ...

Перенаправить все запросы с поддоменов на index.php с get-параметром
Здравствуйте, заранее извиняюсь за возможно некорректный заголовок, постараюсь объяснить. Все что мне нужно: при вводе в строке...

Список файлов определённой директории
Здравствуйте фуромчане. Начну из далека, чтобы небыло вопросов наподобие: "может ты вирус пишешь?" "хочешь чтото...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru