Помогите с RewriteRule

Discussion in 'PHP' started by spider-intruder, 12 Feb 2010.

  1. spider-intruder

    spider-intruder Elder - Старейшина

    Joined:
    9 Dec 2005
    Messages:
    700
    Likes Received:
    339
    Reputations:
    37
    Реврайт в lighthttpd имеет вид

    url.rewrite-once = ( "^/([0-9a-zA-Z/]+)/?\??(.*=.*)?$" => "/index.php?q=$1&$2" )


    (пример урла: http://server/book/page/column/?id=17 реврайтится в http://server/index.php?q=book/page/column&Id=17)

    Нужно переделать его в апачевский .htaccess.

    Поидее так:

    RewriteEngine On
    RewriteCond %{REQUEST_URI} !^.*index.php\\?.*$
    RewriteRule ^([0-9a-zA-Z/]+)/?\??(.*=.*)?$ index.php?q=$1&$2

    но параметр $2 никак не передается? Где ошибка?!
     
  2. -=Zhenek=-

    -=Zhenek=- Elder - Старейшина

    Joined:
    31 Dec 2007
    Messages:
    271
    Likes Received:
    77
    Reputations:
    1
    RewriteRule ^([0-9]{4})/([0-9]{2})/([0-9]{2})/(.*)(/?)+$ index.php?q=$1/$2/$3&id=$4 [L]

    Как-то так... только 0-9 замени на свои символы
     
    #2 -=Zhenek=-, 12 Feb 2010
    Last edited: 12 Feb 2010
  3. spider-intruder

    spider-intruder Elder - Старейшина

    Joined:
    9 Dec 2005
    Messages:
    700
    Likes Received:
    339
    Reputations:
    37
    Не получается именно переменная $2 . В том примере что пивел ты нет отличий от того, что привел я. Все что после
    "путь/?" не попадает в переменную $2
     
    #3 spider-intruder, 12 Feb 2010
    Last edited: 12 Feb 2010