The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Настройка htaccess"
Вариант для распечатки  
Пред. тема | След. тема 
Форум WEB технологии (Apache, http-серверы)
Изначальное сообщение [ Отслеживать ]

"Настройка htaccess"  +/
Сообщение от dcrom (ok) on 27-Янв-12, 23:25 
Здравствуйте!

Есть .htaccess:
AddHandler cgi-script .cgi
Options +ExecCGI
DirectoryIndex  index.cgi index.html
RewriteEngine on
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-s
RewriteCond %{REQUEST_FILENAME} !-l
RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA]

Как сделать чтобы в отдельные директории пользователь войти не мог, а шло перенаправление на index.cgi с параметром?

Например, нужно обрабатывать путь /plugins

Ответить | Правка | Cообщить модератору

Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Настройка htaccess"  +/
Сообщение от felicson on 29-Янв-12, 07:49 
> Здравствуйте!

Как вариант

RewriteRule ^/plugins.*$ index.cgi?bla=bla [R,L]


Только его надо выше RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA]


Ответить | Правка | ^ к родителю #0 | Наверх | Cообщить модератору

2. "Настройка htaccess"  +/
Сообщение от felicson on 29-Янв-12, 07:51 
Код возврата для редиректа подставляется так, например для 301 [R=301]

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

3. "Настройка htaccess"  +/
Сообщение от dcrom (ok) on 09-Фев-12, 17:38 
Здравствуйте!
Не получилось.
Вот мой .htaccess, без Вашей строки.

AddHandler cgi-script .cgi                                                      
Options +ExecCGI.                                                              
DirectoryIndex  index.cgi index.html                                            
RewriteEngine on                                                                
RewriteBase /                                                                  
RewriteCond %{REQUEST_FILENAME} !-f                                            
RewriteCond %{REQUEST_FILENAME} !-d                                            
RewriteCond %{REQUEST_FILENAME} !-s                                            
RewriteCond %{REQUEST_FILENAME} !-l                                            
RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA].

>> Здравствуйте!
> Как вариант
> RewriteRule ^/plugins.*$ index.cgi?bla=bla [R,L]
> Только его надо выше RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA]

Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

5. "Настройка htaccess"  +/
Сообщение от felicson on 09-Фев-12, 22:12 
>[оверквотинг удален]
> RewriteBase /
> RewriteCond %{REQUEST_FILENAME} !-f
> RewriteCond %{REQUEST_FILENAME} !-d
> RewriteCond %{REQUEST_FILENAME} !-s
> RewriteCond %{REQUEST_FILENAME} !-l
> RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA].
>>> Здравствуйте!
>> Как вариант
>> RewriteRule ^/plugins.*$ index.cgi?bla=bla [R,L]
>> Только его надо выше RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA]

Проблема в том что в .htaccess директива [L] не действует(http://httpd.apache.org/docs/2.2/rewrite/flags.html#flag_l), и правила прогоняются полностью
в контексте <VirtualHost> все ок, достаточно строк:

RewriteRule ^/plugins /index.cgi?bla=bla [R,L]
RewriteRule ^(.*)$ /index.cgi?%{QUERY_STRING} [L,QSA]


Ответить | Правка | ^ к родителю #3 | Наверх | Cообщить модератору

4. "Настройка htaccess"  +/
Сообщение от dcrom (ok) on 09-Фев-12, 21:38 
Всё нормально. Получилось!
Спасибо!


Ответить | Правка | ^ к родителю #1 | Наверх | Cообщить модератору

6. "Настройка htaccess"  +/
Сообщение от felicson on 09-Фев-12, 22:12 
> Всё нормально. Получилось!
> Спасибо!

Покажи решение :)

Ответить | Правка | ^ к родителю #4 | Наверх | Cообщить модератору

7. "Настройка htaccess"  +/
Сообщение от dcrom (ok) on 11-Фев-12, 20:08 
>> Всё нормально. Получилось!
>> Спасибо!
> Покажи решение :)

AddHandler cgi-script .cgi                                                      
Options +ExecCGI                                                                
DirectoryIndex  index.cgi index.html                                            
RewriteEngine on                                                                
RewriteBase /                                                                  
RewriteCond %{REQUEST_FILENAME} !-f                                            
RewriteCond %{REQUEST_FILENAME} !-d                                            
RewriteCond %{REQUEST_FILENAME} !-s                                            
RewriteCond %{REQUEST_FILENAME} !-l                                            
RewriteRule ^/plugins.*$ index.cgi?%{QUERY_STRING} [R,L]                        
RewriteRule ^/themes.*$ index.cgi?%{QUERY_STRING} [R,L]                        
RewriteRule ^(.*)$ index.cgi?%{QUERY_STRING} [L,QSA]

Ответить | Правка | ^ к родителю #6 | Наверх | Cообщить модератору

Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2025 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру