Это может или не может помочь Вам. Где я работаю, у нас есть тонна доменов, зарегистрированных во вторичном TLDs (например, сеть, org, различный ccTLDs), которые обычно перенаправляют к основному TLD (в большинстве случаев, com). Конечным результатом являются приблизительно 1 000 URL, которые должны быть перенаправлены в другом месте.
Подход, который мы проявили, должен был использовать mod_rewrite Apache для генерации перенаправлений, и конфигурация хранится в key:value таблице (какой mod_rewrite может читать). Базовая конфигурация выглядела бы примерно так:
RewriteEngine on
RewriteMap redir dbm=db:/path/to/redir-map.db
# store redir url in a var, or "XX" if not found
RewriteRule ^ - [E=url:${redir:%{REQUEST_URI}|XX}]
# if the redir url is found, do the redirect
RewriteCond %{ENV:url} !^XX$
RewriteRule ^.*$ %{ENV:url}? [R=permanent,L]
Ваша карта перенаправления была бы файлом простого текста со строками как это:
# old uri new url
/some/path/funny-story http://newsite.blogtastic.com/funny-story
/some/path/my-birthday http://newsite.blogtastic.com/birthday-2009
Файл DB создается со следующей программой (включенный с Apache):
httxt2dbm -v -f DB -i redir-map.txt -o redir-map-db
Мне нравится подход, потому что он сводит нашу конфигурацию Apache к минимуму, и он не требует, чтобы мы перезагрузили конфигурацию, когда мы должны добавить/изменить/удалить перенаправление (мы просто восстанавливаем файл DB).
В нашем случае мы получаем приблизительно 35 000 ударов в день, который должен быть перенаправлен. Сервер является CentOS 5.2 VM, работающим под ESX с единственным Xeon на 3 ГГц, подвергнутым ему. Системная нагрузка обычно ниже 0.1, и использование ЦП является почти нолем. Мы регистрируем перенаправления с дополнительной директивой CustomLog, которая составляет объем диска сервера ввод-вывод (который сам является все еще довольно низким). Этот сервер размещает другие веб-сайты также, таким образом, влияние перенаправлений на самом деле несколько ниже, чем эти числа указали бы.
Я не могу говорить о том, как этот подход выдерживает сравнение с использованием директив Перенаправления вместо, Переписывают, но я не могу предположить, что они выполняют все это по-другому. Я не думал бы, что добавление 100 + перенаправления окажет любое значимое влияние на Ваш сервер.
Я думаю, что это check_by_ssh
это испытывает таймаут (10 секунд тайм-аут по умолчанию для этой проверки), а не check_oracle_health
в нем. Попытайтесь установить тайм-аут check_by_ssh
к более высокому значению и видят, происходит ли это все еще.
Надеюсь, это поможет!