2011-01-11 2 views
0

Я хотел бы использовать это заявлениеВопрос Page Output Caching в ASP.NET

<%@ OutputCache Duration="20" Location="Any" VaryByParam="none"%> 

для нашего сайта. (это работает кстати)

Но есть несколько доменов, указывающих на один и тот же сайт, например mydomain.fr и mydomain.ch.

Тогда в BasePage я установить культуру сайта FR-FR, если они ввели mydomain.fr, де-CH, когда они ввели mydomain.ch и т.д.

мне было интересно, и как URL, будет загружать одну и ту же страницу /default.aspx, является ли страница одинаковой для обоих пользователей (поэтому, когда .fr приходит первым, посетитель .ch видит (кэшированную) .fr страницу), или фреймворк думает и говорит: hey, mydomain.fr/default.aspx is not то же самое, что и mydomain.ch/default.aspx, даже если это одна и та же физическая страница, так что давайте НЕ берем кешированный и воссоздаем (и кешем) новую версию?

Я читал об изменениях для кэширования вывода страницы, но .fr vs .ch - это не заголовок, который я думаю?

ответ

2

Вы можете изменить его заголовком HOST, что означает, что каждый домен будет иметь свой собственный набор кешей.

Заголовок HOST содержит имя хоста/доменное имя, загруженное браузером; Итак, mydomain.fr или mydomain.ch и т. Д.

+0

работ! Огромное спасибо. – Michel

0

Я бы очень хотел, чтобы вы автоматически не устанавливали культуру на основе домена, который они использовали для перехода на ваш сайт.

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

Кроме того, предлагайте пользователям небольшой значок языка (обычно это флаг) в верхней части вашего сайта. Это должно позволить им изменить свой язык выбора.

Что касается вашего фактического вопроса: если вы правильно используете ресурсы культуры, вам не нужно беспокоиться о кешировании. Это позаботится о вас.