LINUX.ORG.RU
решено ФорумAdmin

Как в .htaccess ограничить доступ к виртуальному пути для всех IP кроме одного?

 


0

2

Для того что бы ограничить доступ к каталогу для всех IP кроме одного, нужно положить в него .htaccess со следующим содержанием:

Order Deny,Allow
Deny from all
Allow from 1.1.1.1

Можно в virtual hosts сделать это таким образом

<Directory "/var/www/html/mysite/my_folder">
Order Deny,Allow
Deny from all
Allow from 1.1.1.1
</Directory>

Но как решить эту задачу, если каталога my_folder нет и это виртуальный путь?

Ниже содержание .htaccess каталога mysite

/var/www/html/mysite/.htaccess :

AddDefaultCharset utf-8
Options +FollowSymLinks
IndexIgnore */*
RewriteEngine on
RewriteRule ^favicon.ico$ - [F,L]
# если директория или файл существуют, использовать их напрямую
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
# иначе отправлять запрос на файл index.php
#RewriteRule . index.php <-- было
RewriteRule ^([^/].*)$ /index.php/$1 [L] # <-- стало

проверять-то опять по scp будешь, как в прошлой теме? ;)

если виртуальный - в контроллере решай эту задачу. судя по рерайту, это всё в индекс.похапэ надо делать

aol ★★★★★
()
if (req.url == '/my_folder') 
 res.status(403)
 

не благодари

invokercd ★★★★
()
Последнее исправление: invokercd (всего исправлений: 2)

Для того что бы в настройках апача прописать правила для виртуальных путей, нужно использовать <Location> вместо <Directory>.

<Location /my_folder/>
Order Deny,Allow
Deny from all
Allow from 1.1.1.1
</Location>

mrblond
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.