Как вы динамически редактируете robots.txt в среде с балансировкой нагрузки? - PullRequest
2 голосов
/ 05 октября 2009

Похоже, нам скоро придется начать балансировку нагрузки наших веб-серверов.

У нас есть запрос функции для динамического редактирования robots.txt, что не является проблемой для одного хоста - однако, как только мы включим наш балансировщик нагрузки и он будет работать - похоже, мне придется перенести файл на другой хостов (s).

Это звучит крайне «плохо». Как бы вы справились с этой ситуацией?

Я уже позволил клиенту редактировать метатег 'robots', который (imo) должен эффективно делать то же самое, что он хочет от редактирования robots.txt, но я действительно не очень много знаю о SEO.

Может быть, есть совершенно другой способ справиться с этим?

UPDATE

похоже, что мы пока сохраним его в s3 и запишем его на передней стороне ...

КАК МЫ ДЕЛАЕМ СЕЙЧАС

поэтому мы используем merb..Я сопоставил маршрут с нашим robots.txt следующим образом:

match('/robots.txt').to(:controller => 'welcome', :action => 'robots')

тогда соответствующий код выглядит так:

def robots
  @cache = MMCACHE.clone
  begin
    robot = @cache.get("/robots/robots.txt")
  rescue
    robot = S3.get('robots', "robots.txt")
    @cache.set("/robots/robots.txt", robot, 0)
  end
  @cache.quit
  return robot
end

Ответы [ 4 ]

0 голосов
/ 08 июля 2010

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

0 голосов
/ 06 октября 2009

Альтернативой может быть обратный прокси-сервер, который по-разному обрабатывает балансировку нагрузки robots.txt. Вы можете обслуживать его напрямую с обратного прокси-сервера или отправить все запросы на этот файл на один сервер. Это имеет большой смысл, поскольку robots.txt будет требоваться относительно редко.

0 голосов
/ 09 октября 2009

Я не уверен, что ты уже дома. Если это так, игнорируйте. (ОБНОВЛЕНИЕ: я вижу примечание к вашему исходному сообщению, но это может быть полезно без разницы.)

Если вы отобразили вызов в robots.txt на http-обработчик или аналогичный , вы можете сгенерировать ответ, скажем, в дБ.

0 голосов
/ 05 октября 2009

Возможно, приложение отредактирует содержимое файла robots.txt и сохранит введенные пользователем данные в базу данных. Затем через определенные интервалы фоновый процесс извлекает последние данные из БД и отправляет их на ваши серверы.

...