Назад | Перейти на главную страницу

Используйте fastize.com: перенаправление на «http: // www», кроме одной страницы в https (с lighttpd)

Я использую потрясающий оптимизатор интерфейса fastize.com , что требует www поддомен. Также у меня есть страница оплаты, на которой я бы использовал HTTPS без использования fastize, поэтому на другом поддомене.

Пользуюсь lighttpd, у меня уже есть хорошее перенаправление для всех страниц. Я добавил поддомен и правило для страницы оплаты, например:

$HTTP["host"] =~ "^payment\.domain\.com$" {
  url.redirect = ("^/(.*)$" => "https://domain.com/payment/")
}

$HTTP["host"] =~ "^domain\.com$" {
   url.redirect = ("^/(.*)$" => "http://www.domain.com/$1")
}

Но второе правило ловит звонок первого, и я получаю http://www.domain.com/paymentpage/ что плохо из-за отсутствия HTTPS.

Есть ли причина, по которой вы не делаете все просто https? В зависимости от того, какие ресурсы вы загружаете на страницу оплаты, если какой-либо из них небезопасен (http), вы получите предупреждения в консоли или, возможно, не загрузите ресурсы вообще.

$HTTP["host"] =~ "^payment\.domain\.com$" {
    # Redirect to the fully correct domain - www.domain.com - to avoid more redirects
    url.redirect = ("^/(.*)$" => "https://www.domain.com/payment/")
}

# Redirect any http requests for the payment domain
$HTTP["scheme"] == "http" {
    url.redirect = ( "^/payment/$" => "https://www.domain.com/payment/" )
}

$HTTP["host"] =~ "^domain\.com$" {
    url.redirect = ("^/(.*)$" => "http://www.domain.com/$1")
}

Чтобы уточнить и без возможности добавить комментарий, Fasterize делать поддержка SSL: http://www.fasterize.com/en/faq Просто попросите службу поддержки установить ваш сертификат в инфраструктуре Fasterize.

- Стефан (генеральный директор, Fasterize ;-)