информационная безопасность
без паники и всерьез
 подробно о проектеRambler's Top100
Spanning Tree Protocol: недокументированное применениеЗа кого нас держат?
BugTraq.Ru
Русский BugTraq
 Анализ криптографических сетевых... 
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Microsoft обещает радикально усилить... 
 Ядро Linux избавляется от российских... 
 20 лет Ubuntu 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / форум / web building
Имя Пароль
ФОРУМ
если вы видите этот текст, отключите в настройках форума использование JavaScript
регистрация





Легенда:
  новое сообщение
  закрытая нитка
  новое сообщение
  в закрытой нитке
  старое сообщение
  • Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
  • Новичкам также крайне полезно ознакомиться с данным документом.
Спасибо =). 02.12.06 03:27  Число просмотров: 3115
Автор: n0xi0uzz <Черкасов Виктор> Статус: Member
<"чистая" ссылка>
> Ну а если все же mod_rewrite, то слеши можно сделать
> "необязательными" с помощью квантификатора
> "?" (что значит одно или ноль
> совпадений).

Хех, вот читал же об этом в документации по mod_rewrite, да и стандарт это для регулярок... В общем, я протупил =). Спасибо! =)

А насчет скрипта, не совсем понятна (в полчетвертого утра) технология. То есть, запрос mod_rewrite'ом передается в скрипт, а там разбирается REQUEST_URI и в header пихается соотвествующий Location, я так понимаю?
<web building>
[mod_rewrite] Обработка необязательных параметров. 02.12.06 01:39  
Автор: n0xi0uzz <Черкасов Виктор> Статус: Member
Отредактировано 02.12.06 01:40  Количество правок: 1
<"чистая" ссылка>
Здравствуйте.
Прикручиваю к движку своего сайта mod_rewrite, возникла следующая проблема.
На данный момент имеются такие строки:
RewriteEngine On
RewriteBase /
RewriteRule ^(ru|eng)/main/(.*)$          cgi-bin/main.cgi?p=main&lang=$1&hash=$2 [L]
RewriteRule ^(ru|eng)/docs/([0-9]*)/([0-9]*)/(.*)$ cgi-bin/main.cgi?p=docs&lang=$1&did=$2&d=$3&hash=$4 [L]

---
В последнем правиле второй и третий параметры -- необязательны, то есть, если они не указаны, при запросе к серверу /ru/docs/, скрипту должны передаваться параметры ?p=docs&lang=ru&did=&d=&hash=[четвертый_параметр]. Но мешают слеши, -- поэтому то, что надо выполняется только если запрос выглядит как /ru/docs///[четвертый_параметр].

Вопрос в том, как написать условие такое, чтобы слеши были необязательны?
Надеюсь, я ясно всё объяснил, хоть и несколько сумбурно =).
Спасибо.
[mod_rewrite] Я вобще из траспортного цеха. 02.12.06 01:47  
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
<"чистая" ссылка>
Ты уверен в том, что всё это надо разгребать mod_rewrite'ом? Я бы сделал перенаправление всего в один скрипт, а он уж пусть разбирает URL. А уж в скрипте ты сможешь всегда любую логику организовать.
Поддерживаю 02.12.06 01:54  
Автор: Heller <Heller> Статус: Elderman
<"чистая" ссылка>
> Ты уверен в том, что всё это надо разгребать
> mod_rewrite'ом? Я бы сделал перенаправление всего в один
> скрипт, а он уж пусть разбирает URL. А уж в скрипте ты
> сможешь всегда любую логику организовать.
Ну а если все же mod_rewrite, то слеши можно сделать "необязательными" с помощью квантификатора "?" (что значит одно или ноль совпадений).
Спасибо =). 02.12.06 03:27  
Автор: n0xi0uzz <Черкасов Виктор> Статус: Member
<"чистая" ссылка>
> Ну а если все же mod_rewrite, то слеши можно сделать
> "необязательными" с помощью квантификатора
> "?" (что значит одно или ноль
> совпадений).

Хех, вот читал же об этом в документации по mod_rewrite, да и стандарт это для регулярок... В общем, я протупил =). Спасибо! =)

А насчет скрипта, не совсем понятна (в полчетвертого утра) технология. То есть, запрос mod_rewrite'ом передается в скрипт, а там разбирается REQUEST_URI и в header пихается соотвествующий Location, я так понимаю?
Зачем в Location 02.12.06 11:25  
Автор: ZloyShaman <ZloyShaman> Статус: Elderman
<"чистая" ссылка>
> А насчет скрипта, не совсем понятна (в полчетвертого утра)
> технология. То есть, запрос mod_rewrite'ом передается в
> скрипт, а там разбирается REQUEST_URI и в header пихается
> соотвествующий Location, я так понимаю?
у тебя будет скрипт MAIN, на который рерайтятся все запросы (ну, статику оттуда можно исключить). В нём разбираешь REQUEST_URI и в зависимости от него отображаешь то, что тебе нужно. Инклюдишь нужные файлы с соответствующей логикой и т.д.
1




Rambler's Top100
Рейтинг@Mail.ru


  Copyright © 2001-2024 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach