Перейти к публикации

Интересные дела с календарём


Рекомендованные сообщения

Значит суть проблемы:

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

На сайте (основном) включен календарь и вот в ссылках того календаря показываются ссылки с зеркал что в других доменных зонах (к примеру на домене com в календаре http://****.net/2012/02/04/).

В чём и с чем может быть проблема?

За ранее благодарен.

:huh: Архив так само

И теги :blink:

Ссылка на сообщение
Поделиться на других сайтах

Настройки скрипта смотрите, там видимо указан другой домен.

Увы, в настройакх скрипта домены прописано правильно, каждый в своей зоне.

:) Вроде разобрался.

На зеркалах не было прав на запись в кеш.

Ан нет, всё одно ссылки зеркал светят в календаре, тегах и архивах :unsure:

Ссылка на сообщение
Поделиться на других сайтах

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

Кто может помочь разобраться что за чудеса?

Настройки скрипта смотрите, там видимо указан другой домен.

Тогда бы и по ссылкам в новостях были бы переходы на зеркала, а так только в тех модулях.

Жаль, но пришлось отключить вывод тех модулей.

Гиппотетически если бы я был не на собственном сервере а на каком нить общем, то соседи у меня бы крутили рекламу. Прикольно.

Ссылка на сообщение
Поделиться на других сайтах

Увы, в настройакх скрипта домены прописано правильно, каждый в своей зоне.

Что значит у каждого домена прописаны свои настройки скрипта? Зеркала, это домены ссылающиеся на один и тот же скрипт, у них не может быть никаких своих настроек, у доменов зеркал работает одна и таже копия скрипта и одни и теже настройки. Соответственно либо вы путаете понятия и речь идет не о зеркалах, либо у вас ваши домены вовсе не зеркала, а вы их как то по иному связывали.

Ссылка на сообщение
Поделиться на других сайтах

Увы, в настройакх скрипта домены прописано правильно, каждый в своей зоне.

Что значит у каждого домена прописаны свои настройки скрипта? Зеркала, это домены ссылающиеся на один и тот же скрипт, у них не может быть никаких своих настроек, у доменов зеркал работает одна и таже копия скрипта и одни и теже настройки. Соответственно либо вы путаете понятия и речь идет не о зеркалах, либо у вас ваши домены вовсе не зеркала, а вы их как то по иному связывали.

Опишу подробней.

Свой личный дедик, на нём основной домен и зеркала в других доменных зонах.

Скрипты зеркал в разных папках и под разными пользователями (например test1.com владелец на сервере Вася конфиг соответсвенн доменной зоне , test1.info владелец на сервере Петя конфиг соответсвенн доменной зоне, test1.tv Федя конфиг соответсвенн доменной зоне и т.д) база одна локально на всех, ip основного домена и зеркал разные, шаблон и настройки конфига (кроме указателя домена) одинаковые.

Всё работает, но проблема с выводом стандартных модулей (проблему описал выше).

Ссылка на сообщение
Поделиться на других сайтах

Скрипты зеркал в разных папках и под разными пользователями (например test1.com владелец на сервере Вася конфиг соответсвенн доменной зоне , test1.info владелец на сервере Петя конфиг соответсвенн доменной зоне, test1.tv Федя конфиг соответсвенн доменной зоне и т.д)

Это у вас никакие не зеркала а отдельные сайты в разных местах. Все что их обьеденияет это общая база данных и не более. Скорее всего у вас включено memcache кеширование, и вы видите там домен того сайта который первый записал данные в кеш. т.к. memcache напрямую привязан и данным БД, а у вас она одна то кеш пересекается с другими сайтами. Решений проблемы две:

1. Отключить memcache кеширование и включить файловый кеш, тогда кеш у каждого сайта будет локальным.

2. Сделать домены именно правильными зеркалами как и положено, чтобы все домены ссылались на одну копию скрипта, тогда проблем также не будет и при использовании memcache

Ссылка на сообщение
Поделиться на других сайтах

Скрипты зеркал в разных папках и под разными пользователями (например test1.com владелец на сервере Вася конфиг соответсвенн доменной зоне , test1.info владелец на сервере Петя конфиг соответсвенн доменной зоне, test1.tv Федя конфиг соответсвенн доменной зоне и т.д)

Это у вас никакие не зеркала а отдельные сайты в разных местах. Все что их обьеденияет это общая база данных и не более. Скорее всего у вас включено memcache кеширование, и вы видите там домен того сайта который первый записал данные в кеш. т.к. memcache напрямую привязан и данным БД, а у вас она одна то кеш пересекается с другими сайтами. Решений проблемы две:

1. Отключить memcache кеширование и включить файловый кеш, тогда кеш у каждого сайта будет локальным.

2. Сделать домены именно правильными зеркалами как и положено, чтобы все домены ссылались на одну копию скрипта, тогда проблем также не будет и при использовании memcache

Да, так и есть, включен мемкеш.

Если на основном мем кеш включен, на зеркалах файловый, либо выключено кеширование, то проблема должна исчезнуть?

Ссылка на сообщение
Поделиться на других сайтах

Если на основном мем кеш включен, на зеркалах файловый, либо выключено кеширование, то проблема должна исчезнуть?

да тоже вариант, тогда кеш также не будет пересекаться.

Ссылка на сообщение
Поделиться на других сайтах

Вообще не плохо бы фильтрацию вывода ссылок в архиве и других ст. модулях сделать исходя от домена прописанного в кофиге скрипта, потому как с новостями проблем нет, а они так же кешируются и топневс так же нормально работает, все ссылки родные.

Ок, Владимир, спасибо, попробую.

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

Ссылка на сообщение
Поделиться на других сайтах

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

Вы невнимательно прочитали мое сообщение, memcache привязан к данным базы данных MySQL, одна и таже база данных не может быть на общем шаред хостинге, у каждого пользователя на хостинге свои базы данных.

Вообще не плохо бы фильтрацию вывода ссылок в архиве и других ст. модулях сделать исходя от домена прописанного в кофиге скрипта, потому как с новостями проблем нет, а они так же кешируются и топневс так же нормально работает, все ссылки родные.

Что то у вас еще отличается на этих доменах, кроме URL, кеш зависит от многих параметров, и от количества новостей и от названия шаблонов и от группы пользователей. Если бы у вас это все совпало то показывало бы все эти модули так. Календарь например не зависит от группы пользователей.

Фильтрацию нуно, фильтрацю

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

Ссылка на сообщение
Поделиться на других сайтах

Вы невнимательно прочитали мое сообщение, memcache привязан к данным базы данных MySQL, одна и таже база данных не может быть на общем шаред хостинге, у каждого пользователя на хостинге свои базы данных.

С мемкешем да, но там много и других факторов включая злоумышленников что могут быть по соседству, а т.к модули не фильтруют выборку ссылок то может быть всё.

Что то у вас еще отличается на этих доменах, кроме URL, кеш зависит от многих параметров, и от количества новостей и от названия шаблонов и от группы пользователей. Если бы у вас это все совпало то показывало бы все эти модули так. Календарь например не зависит от группы пользователей.

Всё абсолютно одинаково кроме урлов. И что интересно проблема проявляется не постоянно и не на всех страничках, на одних есть, на других нет. Мб зависит от постоянности просмотра, мб что другое. Кеш чистишь, всё стаёт на свои места, потом опять проявляются ссылки с зеркал. То ИМХО если фильтровать вывод ссылок, либо пользовать жёсткий префикс домена от конфига то проблемы не будет вообще хоть сколько таких доменов с общей базы.

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

Ммм, ну понятие зеркал фактически одно, а вот реализация может быть разная.

Зе́ркало (Mirror) — точная копия (более 80 процентов совпадений) данных одного сервера на другом. В Интернете зеркалом сайта называют точную копию другого сайта. Наиболее часто зеркала сайтов используются для предоставления нескольких источников одной и той же информации. Часто большие или популярные файлы располагают на нескольких зеркалах для ускорения скачивания и распределения нагрузки.

Есть зеркала так как ты указал, есть зеркала со скриптами на разных серверах и одной расшаренной базой для них, в разных зонах, с разными доменными именами. Требуется одно--идентичность содержание, а она у меня есть. Плюс а смысл держать зеркала с 301 редиректом на основной скрипт? Если проблеммы у родительского скрипта, то и зеркала те до фени.

Оно конечно лучше чтоб ты сам ознакомился с реализацией , отпишу в поддержку, посмотри что подкрутить, потому как проблема не постоянная, при чистке кеша исчезает и присутствует на разных страничках по разному. Естественный то глюк, либо по чьему то злоумышлению (возрастает количество внешних ссылок, поисковик выкидывает страничку как линкопомойку и то кому то выгодно) в том нуно разобраться бы.

Ссылка на сообщение
Поделиться на других сайтах

С мемкешем да, но там много и других факторов включая злоумышленников что могут быть по соседству, а т.к модули не фильтруют выборку ссылок то может быть всё.

если сервер настроен правильно, то соседей с общим доступом быть не может, в том числе и для memcache.

Ссылка на сообщение
Поделиться на других сайтах

С мемкешем да, но там много и других факторов включая злоумышленников что могут быть по соседству, а т.к модули не фильтруют выборку ссылок то может быть всё.

если сервер настроен правильно, то соседей с общим доступом быть не может, в том числе и для memcache.

Человеческий фактор, плюс недоработки серверных аддонов могут сыграть свою роль.

Лучше когда сам скрипт локально фильтрует данные на вывод ссылок.

Ссылка на сообщение
Поделиться на других сайтах

Человеческий фактор, плюс недоработки серверных аддонов могут сыграть свою роль. Лучше когда сам скрипт локально фильтрует данные на вывод ссылок.

Я не совсем понимаю о каком человеческом факторе и о какой фильтрации вы говорите. Кеш храниться в уникальных ключах в памяти, ключ напрямую зависит от базы данных MySQL серверу, как не может быть двух одинаковых баз на одном MySQL сервере так и не может быть двух одинаковых ключей для получения данных из кеша. Ваши сайты используют на одном и том же сервере одну и ту же базу данных, поэтому ключ по которому берется кеш совпадает. Если бы ваши сайты использовали разные базы данных, то ваш кеш никогда бы не пересекался, но параметры доступа к БД на всех сайтах у вас установлены одинаковые, поэтому и кеш в памяти совпадает. И проблема у вас не потому что на одном сервере установлены несколько сайтов, а потому что все эти сайты используют одну и ту же БД, находясь при этом в разных местах.

Ссылка на сообщение
Поделиться на других сайтах

Человеческий фактор, плюс недоработки серверных аддонов могут сыграть свою роль. Лучше когда сам скрипт локально фильтрует данные на вывод ссылок.

Я не совсем понимаю о каком человеческом факторе и о какой фильтрации вы говорите. Кеш храниться в уникальных ключах в памяти, ключ напрямую зависит от базы данных MySQL серверу, как не может быть двух одинаковых баз на одном MySQL сервере так и не может быть двух одинаковых ключей для получения данных из кеша. Ваши сайты используют на одном и том же сервере одну и ту же базу данных, поэтому ключ по которому берется кеш совпадает. Если бы ваши сайты использовали разные базы данных, то ваш кеш никогда бы не пересекался, но параметры доступа к БД на всех сайтах у вас установлены одинаковые, поэтому и кеш в памяти совпадает. И проблема у вас не потому что на одном сервере установлены несколько сайтов, а потому что все эти сайты используют одну и ту же БД, находясь при этом в разных местах.

Я то понимаю, но не ясно одно почему и как выходит что на разных страничках выводит в тех модулях ссылки с зеркал, причём в календаре с одного зеркала, а в архиве с другого, есть страницы что всё нормально и в модулях родительские ссылки . С топ невс всё нормально равно как и с новостями

Ссылка на сообщение
Поделиться на других сайтах

Я то понимаю, но не ясно одно почему и как выходит что на разных страничках выводит в тех модулях ссылки с зеркал, причём в календаре с одного зеркала, а в архиве с другого, есть страницы что всё нормально и в модулях родительские ссылки .

Еще раз. Вы используете кеш memcache, и одну и ту же базу данных, соответственно все ваши домены пишут кеш в одну и ту же область memcache. С какого домена кеш был записан первым тот домен вы и будете видеть в кеше. Разные блоки кеша имеют разные параметры и зависят от разных условий, блоки новостей зависят от групп пользователя, потому как в зависимости от группы может быть разных контент на странице, а вот календарь или архив от группы пользователя не зависит никак, потому как календарь и блок архива всегда одинаков независимо от группы пользователя, т.к. их вид никак не может зависит от группы, количество новостей в БД от группы не зависит. А теперь конкретный пример у нас например есть сайты site.com и site.ru у которых одна БД. На сайт site.com заходит гость, создается кеш. Потом на сайт site.ru заходит администратор, так вот в блоке календаря вы увидите ссылки от site.com т.к. кеш от группы не зависит и этот кеш создал гость на сайте site.com. А вот блок новостей у вас будет от site.ru потому как его кеш зависит от группы пользователя, и вы как админ на site.com не заходили и кеша еще не имеете и его создали вы на сайте site.ru. И если вы зайдете как админ на сайте site.com после того как побывали админом на site.ru то в новостях вы увидите ссылки именно от сайта site.ru т.к. побывали на нем раньше и раньше создали кеш.

Как это решать я описал вам выше.

Ссылка на сообщение
Поделиться на других сайтах

Присоединяйтесь к обсуждению

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

Гость
Ответить в тему...

×   Вставлено в виде отформатированного текста.   Вставить в виде обычного текста

  Разрешено не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставить изображения напрямую. Загрузите или вставьте изображения по ссылке.

×
×
  • Создать...