Кілька переадресацій на lighttpd


0

У мене є запит на переадресацію декількох окремих URL-адрес на нові окремі URL-адреси. Це така ситуація:

**Old URL                         -->     New URL**
old.domain.org/                   -->  new.domain.net/inf/site1.html
old.domain.org/#data/re/sys.html  -->  new.domain.net/inf/site2.html 
old.domain.org/#data/rq/opr.html  -->  new.domain.net/inf/site3.html

Я створив файл переадресації з цим кодом:

$HTTP["host"] == "old.domain.org" {
       url.redirect = ("^/$" => "http://new.domain.net/inf/site1.html",
       "^/#data/re/sys.html" => "http://new.domain.net/inf/site2.html",
       "^/#data/rq/opr.html" => "http://new.domain.net/inf/site3.html"
       )
}

Але це не працює для мене; тому що, коли я http://old.domain.org/#data/re/sys.htmlпереходжу до переадресації lighttpd на http://new.domain.net/inf/site1.html#data/re/sys.html... цього не існує.

Я не розробник, але думаю, що проблема полягає в символі "#" .. хтось сказав мені, що ця частина - це функція JavaScript. Отже, як мені перейти на старі URL-адреси до нових URL-адрес?


Ви праві. lighttpd ніколи не бачить #або нічого після нього, тобто все обробляється на стороні клієнта. Отже, коротка відповідь - ви не можете це зробити просто з lighttpd.
важкий

як я міг це зробити? lighttpd і що ще?
the0

Я б запропонував перенести це запитання на сервер defaultfault.com або webmasters.stackexchange.com (позначте питання для уваги модератора і просто поставте примітку, що ви хочете, щоб воно було переміщене.). Люди, ймовірно, раніше стикалися з цією проблемою.
важкий

Відповіді:


0

У мене немає досвіду роботи з lighttpd, але, напевно, ви можете спробувати кодування URL-кодів , оскільки # є зарезервованим символом у URL-адресах.

Спробуйте замінити #data на% 23data.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.