Требуется помощь по правилам rewrite для lighttpd

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Ghost_of_Net
рядовой
Сообщения: 18
Зарегистрирован: 2006-12-05 14:18:51

Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение Ghost_of_Net » 2008-12-17 11:01:38

Собственно, сабж. Надо переписать следующие правила Апача в формат lighttpd:

Код: Выделить всё

RewriteEngine on
RewriteRule catalog/(.*)?.html(/(.{1,2}))?(/(.*))? catalog2.php?id=$1&view=$3&start=$5 [L]
RewriteRule catalog/ catalog.php [L]
RewriteRule product/(.*)?.html(/(.{1,2}))?(/(.*))? product.php?id=$1&view=$3&start=$5 [L]
RewriteRule tovar/(.*)?.html tovar.php?id=$1 [L]
RewriteRule accomp/(.*)?.html accomp.php?id=$1 [L]
RewriteRule newsarch news.arch.php [L]
RewriteRule article/(.*).html article.php?id=$1 [L]
RewriteRule article/ article.php [L]
RewriteRule articles/(.*).html articles.php?id=$1 [L]
RewriteRule articles/ articles.php [L]
Последний раз редактировалось hizel 2008-12-17 11:11:48, всего редактировалось 1 раз.
Причина: [code][/code]

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение hizel » 2008-12-17 11:24:39

так пробовали?

Код: Выделить всё

RewriteRule catalog/(.*)?.html(/(.{1,2}))?(/(.*))? catalog2.php?id=$1&view=$3&start=$5

Код: Выделить всё

url.rewrite-once = ( "catalog/(?!(.*)).html(/(?!(.{1,2})))(?!(/(.*)))" => "catalog2.php?id=$1&view=$3&start=$5" )
правда я в скобках запутался :/
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Ghost_of_Net
рядовой
Сообщения: 18
Зарегистрирован: 2006-12-05 14:18:51

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение Ghost_of_Net » 2008-12-17 11:37:33

hizel писал(а):

Код: Выделить всё

url.rewrite-once = ( "catalog/(?!(.*)).html(/(?!(.{1,2})))(?!(/(.*)))" => "catalog2.php?id=$1&view=$3&start=$5" )
правда я в скобках запутался :/
Не - не работает, ситуация осложняется еще тем что нет никакого дебага - и почему не работает сказать не возможно =(

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение hizel » 2008-12-17 11:42:47

Код: Выделить всё

hizel@hzwork:~$ ldd /usr/lib/lighttpd/mod_rewrite.so
        linux-gate.so.1 =>  (0xb7fd3000)
        libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb7f8c000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e31000)
        /lib/ld-linux.so.2 (0xb7fd4000)
hizel@hzwork:~$ man pcre
hizel@hzwork:~$ pcretest                                                 
хе хе, щаз протестим :-)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Ghost_of_Net
рядовой
Сообщения: 18
Зарегистрирован: 2006-12-05 14:18:51

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение Ghost_of_Net » 2008-12-17 11:44:28

hizel писал(а):

Код: Выделить всё

hizel@hzwork:~$ ldd /usr/lib/lighttpd/mod_rewrite.so
        linux-gate.so.1 =>  (0xb7fd3000)
        libpcre.so.3 => /usr/lib/libpcre.so.3 (0xb7f8c000)
        libc.so.6 => /lib/i686/cmov/libc.so.6 (0xb7e31000)
        /lib/ld-linux.so.2 (0xb7fd4000)
hizel@hzwork:~$ man pcre
hizel@hzwork:~$ pcretest                                                 
хе хе, щаз протестим :-)
О_о Я даже не знал что так можно...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение hizel » 2008-12-17 11:57:35

какая команда вас смутила? :)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Ghost_of_Net
рядовой
Сообщения: 18
Зарегистрирован: 2006-12-05 14:18:51

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение Ghost_of_Net » 2008-12-17 12:05:09

Да ни какая... Просто не знал, я вообще мало что знаю по регулярным выражениям.
И как в данном случае тестить?

P.s. Давай на "ты" =)

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение hizel » 2008-12-17 12:49:26

мда что то я перемудрил :)

вот мой диалог дабага(сначала вводится регулярное выражение re> потом данные data> для теста, смотрим ответ

Код: Выделить всё

hizel@hzwork:~$ pcretest
PCRE version 7.8 2008-09-05

  re> catalog/(?!(.*)).html
** Delimiter must not be alphanumeric or \
  re> /catalog\/(?!(.*)).html
    > catalog/
data>
  re>
  re> /catalog\/(?!(.*)).html/
data> catalog
No match
data> catalog/
No match
data> catalog\/scuko.html
No match
data>
  re> /catalog\/?!(.*).html/
data> catalog
No match
data> catalog/index.html
No match
data> /catalog\/(.*)).html/
No match
data>
  re> /catalog\/(.*)).html/
Failed: unmatched parentheses at offset 13
  re> /catalog\/(.*).html/
data> catalog
No match
data> catalog/index.html
 0: catalog/index.html
 1: index
data>
  re> /catalog\/(.*).html(/(.{1,2}))(/(.*))/^[[D
** Unknown option '('
  re> /catalog\/(.*).html(\/(.{1,2}))(\/(.*))/
data> catalog/index.html
No match
data> catalog/index.html/11/bazsoundsystem
 0: catalog/index.html/11/bazsoundsystem
 1: index
 2: /11
 3: 11
 4: /bazsoundsystem
 5: bazsoundsystem
data>
  re> /catalog\/(.*).html(?!\/(.{1,2}))(?!\/(.*))/
data> catalog/index.html/11/bazsoundsystem
No match
data>
  re> /catalog\/(.*).html(\/(.{1,2}))?(\/(.*))?/
data> catalog/index.html
 0: catalog/index.html
 1: index
data> catalog/index.html/11
 0: catalog/index.html/11
 1: index
 2: /11
 3: 11
data> catalog/index.html/11/bazsoundsystem
 0: catalog/index.html/11/bazsoundsystem
 1: index
 2: /11
 3: 11
 4: /bazsoundsystem
 5: bazsoundsystem
вывод

Код: Выделить всё

url.rewrite-once = ( "catalog/(.*).html(/(.{1,2}))?(/(.*))?" => "catalog2.php?id=$1&view=$3&start=$5" )
просто тупо копируем выражения, они такие же как в опаче
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Ghost_of_Net
рядовой
Сообщения: 18
Зарегистрирован: 2006-12-05 14:18:51

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение Ghost_of_Net » 2008-12-17 13:48:36

Спасибо за помощь, в результате длительных копаний выяснилось что проблема так же существует в php коде.

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение hizel » 2008-12-17 14:38:21

та ладно, зато я теперь знаю какие регулярки в lighttpd и как они с apache пресекаются :-D
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

arty.in.ua
проходил мимо

Re: Требуется помощь по правилам rewrite для lighttpd

Непрочитанное сообщение arty.in.ua » 2010-01-20 17:08:22

RКому дать денег что б мои правила с апатча на лайти переписали? :smile:


ася 8774773