понедельник, 17 декабря 2012 г.

Убираем сессии из URL форума IPB 3

Заметил, что бот Sape индексируют один из моих форумов, который использует движок IP.Board, вместе с идентификаторами сессий в адресе страниц. Что не есть хорошо, т.к. возникает множество дублей страниц, да и ссылки не красивые.
Поискал, как решить проблему, нашёл такой вариант - нужно в файле admin/sources/classes/output/publicOutput.php найти строку:
$this->settings['base_url'] .= 's='.$this->member->session_id.'&';
и заменить её на:
if ( $this->member->session_type != 'cookie' AND !$this->member->is_not_human )
{
if ( $this->ipsclass->ip_address=="188.72.80.205" OR $this->ipsclass->ip_address=="188.72.80.201" )
{
$this->settings['base_url'] .= '';
}
else
{
$this->settings['base_url'] .= 's='.$this->member->session_id.'&';
}
}
где IP-адреса это те, с которых на сайт приходят боты Sape.
Мне показалось данное решение не слишком изящным. Зависимость от конкретного адреса это не очень удобно, ведь в случае его изменения, всё опять перестанет работать и нужно будет править код. Да и проблема может всплыть не только при работе с данной биржей ссылок, но и где-нибудь ещё. Требуется универсальное решение.
Я смоделировал ситуацию, якобы я робот, отключил в браузере Cookies и зашёл на сайт, все ссылки на форумы и темы имели в адресе строки типа "s=794e6b3979055a012992bd6bbbe7fd28". Полез читать мануалы, чтобы подробнее разобрать в механизме работы сессий в. Нашёл, что чтобы убрать сессии из адресов нужно в файл .htaccess добавить строки:
php_flag session.use_trans_sid off
php_flag session.use_cookies on
php_flag session.use_only_cookies on
Но это полумера, поэтому не помогло. В движке от Invision старт сессий происходит не внутренней командой PHP, а с помощью собственной функции. Тут мне пришла в голову мысль, а что если отключить сессии в адресе для всех неавторизованных посетителей? И я написал следующую конструкцию:
if ( $this->memberData['member_id'] )
{
$this->settings['base_url'] .= 's='.$this->member->session_id.'&';
}
}
Т.е. всего лишь добавил условие для действия той строки из вышеуказанного файла. Но какой эффект! Теперь все адреса стали чистыми, но и функциональность не нарушилась для пользователей с отключенными Cookies, если они авторизуются на форуме, то сессии появятся, но только для них. А боты будут видеть только чистые ссылки, т.к. регистрироваться на форуме им и не нужно.

среда, 27 июня 2012 г.

Проблема с буквой Ч на CMSimple

Продолжая тему CMSimple, хочу рассказать о проблеме с которой я столкнулся. На всех страницах сайта, где присутствует заглавная буква "Ч", она заменяется на левые значки:
Проблема появилась после переконвертирования файлов сайта из кодировки windows-1251 в utf-8. Официальный сайт поддержки движка советует следующее:
Проблема проявляется, если ваш сайт настроен на кодировку UTF-8. Как ее решить я не знаю (буду рад, если кто подскажет).

Что делать: переведите ваш сайт на "windows-1251" и проблема пропадет. Либо избегайте употребления Ч, заменяя ее, например, 4-й).
Оба приведённых варианта мне не подходят. Начал ковыряться, понял, что проблема в файле /cmsimple/cms.php и в символе параграфа, как ни странно. Больше ничего не скажу пока. Кто-нибудь сталкивался с этой проблемой?

CMSimple с ЧПУ

Разбирался со своими старыми сателлитами, решил привести их в более-менее порядок. Однако менять старый движок с CMSimple на что-то другое не захотелось, я ограничился обновлением версии скрипта, переводом в кодировку UTF-8 и настройкой красивых адресов (ЧПУ).
Если с первыми двумя пунктами всё ясно, то вот сделать нормальные адреса страниц оказалось непросто. Официальный сайт и сайт русскоязычной поддержки CMSimple не содержит никаких вариантов и предлагает довольствоваться следующим:
http://www.example.com/?Nazvanie_Stranicy
Мне же хочется получить стандартный адрес с имитацией статического HTML:
http://www.example.com/nazvanie_stranicy.html
Кто-нибудь делал подобное? Или имеет смысл мне самому покопаться? Тогда принимаю заявки от желающих получить Friendly URL для своего сайта на CMSimple, чтоб мне не ради своих таких двух сайтов этим заниматься.

пятница, 13 января 2012 г.

Проблемы с бесплатным хостингом Fatal

Я пользуюсь множеством различных хостингов, как платных, так и бесплатных. В то числе и услугами компании fatal.ru, кто знает, тот знает, какие там преимущества.
Итак, несколько дней назад мне понадобилось изменить несколько ссылок на сайте, расположенном на одном из моих аккаунтов на этом сервисе. Запускаю FTP-клиент, нажимаю на соединение и вижу:
Статус:  Определение IP-адреса для milena.fatal.ru
Статус:  Соединяюсь с 77.91.229.66:21...
Статус:  Соединение установлено, ожидание приглашения...
Ответ:   220 FATAL.RU FTP Server
Команда: USER ************
Ответ:   331 Password required for ************
Команда: PASS ************
Ответ:   530 Login incorrect.
Ошибка:  Критическая ошибка
Ошибка:  Невозможно подключиться к серверу
Пытаюсь подключиться к другому аккаунту, получаю в точности то же самое. В чём дело? Пароли я не менял, решаю зайти в панель управления по адресу cp.fatal.ru и вижу ошибку "504 Gateway Time-out". Трассировка же проходит успешно, без единой звёздочки.
Ладно, может быть временные проблемы, бесплатный хостинг же как ни как. Откладываю вопрос до следующего дня. Но и на завтрашний день, картина оказывается такой же. Вспоминаю, что на Фатале был форум поддержки и я там даже зарегистрирован. Захожу на главную сайта fatal.ru (красивый дизайн, всё аккуратненько и ничего не предвещает), оттуда по ссылке на forum.fatal.ru и там я сразу вижу полный беспредел. За движком на phpbb3 давно, по-видимому, никто не следил, т.к. в каждом разделе по несколько тысяч тем от спам-ботов и, соответственно, найти какую-то информацию о неработоспособности FTP и контрольной панели невозможно, равно как и сообщить о ней.
Захожу в профиль админа под ником Nadorvir, в нём вижу такую строчку "Последнее посещение: 19 ноя 2011 15:48", как раз с того момента боты и разулялись. Печально. Где же админ?
Сайт хостинга работает, мои все сайты на нём расположенные - тоже. Но ничего нельзя зайти и изменить. Вариантов для связи с администрацией, кроме форума, тоже нет. Остаётся только следить за ситуацией.

UPD: Сегодня, 14 января, все мои сайты перестали открываться, так же, как и панель, но ошибка "502 Bad Gateway".
UPD2: А сегодня, 15 января, заработали сайты, FTP-доступ, но панель управления не грузится :)

четверг, 12 января 2012 г.

Зорька снова закрывается, уже заблокировали все площадки

Я давно работаю с Бегуном, сначала напрямую, а после появления Зорьки, перенёс все свои площадки туда. На днях замечаю, что на одном из сайтов перестал показываться рекламный блок, мне было некогда сразу разбираться в чём дело, поэтому думаю, либо само восстановится, либо позже разберусь.
Вчера зашёл в свой аккаунт на zorkabiz.ru и вижу, что все мои площадки, абсолютно все, висят со статусом "заблокирована" и в всплывающей подсказке такой текст:
Информацию о причине блокировки данной площадки

Вы можете найти в партнерском аккаунте на my.begun.ru,

который был создан для Вас автоматически при регистрации в Зорьке.

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

Если письмо с паролем утеряно, то Вы можете восстановить пароль по ссылке http://my.begun.ru/
Нахожу письмо с паролем, вхожу в аккаунт уже на my.begun.ru и вижу, что все площадки имеют статус "Работает" и никаких причин блокировки, соответственно, не указано.
Далее создаю тикет в службу поддержки Зорьки, вот моя переписка:
Я   12.01.12, 06:51
Здравствуйте! А почему все мои площадки заблокированы? В пояснении сказано, что причина указана на сайте my.begun.ru Я зашёл туда, там у всех площадок статус - работает.
 
support5   12.01.12, 07:07
Здравствуйте!
Возможно, причина заключается в том, что в ближайшее время все сайты из нашего ДПП будут перенесены на прямое обслуживание в Бегун.
Если Вы желаете работать с Бегуном, то Вам необходимо написать заявку в свободной форме на почту partner@begun.ru с указанием логина в ДПП и сайта/сайтов для переноса.
 
Я   12.01.12, 13:33
Т.е. через Зорьку нельзя будет теперь работать? :(((
А как быть с балансом? У меня он сейчас меньше, чем сумма для вывода.
 
support5   12.01.12, 13:44
Добрый день!
Информации о том, что ДПП ZorkaBiz прекращает свою работу, не поступало, однако в данный момент компания Бегун планирует работать с партнерами напрямую.
Информация по выводу средств, не достигших минимального порога в данный момент уточняется.
Вот такая вот петрушка, делайте выводы. Пару лет назад, в интернете промелькнуло сообщение с заголовком "Сенсация! zorkabiz.ru закрывается!", что не соответствовало действительности, а являлось всего лишь шуткой. Похоже, что накаркали.