Получите неправильный PATH_INFO после переписывания в lighttpd - PullRequest
0 голосов
/ 26 декабря 2010

В моем lighttpd файле конфигурации у меня есть правило переписывания:

$HTTP["host"] == "sub.example.com" {
  url.rewrite = (
     "^/(.*)" => "/sub/$1"
  )
}

Поэтому, когда пользователь посещает http://sub.example.com, он фактически посещает http://example.com/sub.

Проблема в том, что PATH_INFO кажется неправильным,

   URL: http://sub.example.com/extra
   PATH_INFO:
     expected: /extra
     what I get: /sub/extra

Теперь, когда я звоню request.get_path(), он возвращает что-то вроде http://sub.example.com/sub/extra, а это не то, что я хочу.

Конечно, я могу просто переопределить метод get_path класса request, но мне интересно, есть ли более простой способ, такой как изменение конфигурации lighttpd?

1 Ответ

2 голосов
/ 26 декабря 2010

Если вы хотите предварительно переписанный URI, попробуйте REQUEST_URI. Как правило, если у вас есть правила перезаписи, это действительно переписанный путь, который вам нужен, иначе переписывание не имеет смысла.

...