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

Что делать если Ваш сайт наказан поисковой системой Google?

К сожалению, Google определенно не собирается публиковать критерии, которые используются для определения тех, кто понесет наказание. Так что нам остается лишь делать обоснованные догадки. В SEO сообществе наши мнения часто формируются путем долговременных наблюдений (порой на это уходят годы) за тем, что приносит, а что не приносит положительные результаты. И, как и с любыми другими аспектами SEO, большая часть сказанного в этой статье может быть встречена возражениями в стиле "я не согласен" или даже "я могу доказать обратное". Такова уж природа того, чем мы занимаемся, тут всегда довольно много места для несогласия.

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

Google Sandbox или наказание?

Прежде чем продолжить я обязан упомянуть о том, что есть разница между наказанием от Google и переносом в песочницу Google sandbox. Вообще-то есть люди, сомневающиеся в самом существовании такой песочницы, но я считаю, что логичным будет предположить ее существование. Довольно распространенное явление: новый сайт просто не появляется в выдаче, не индексируется неделями, а то и месяцами. Кажется, что пока новый сайт или страницы не заработают некоего уровня доверия в Google они просто не появятся в выдаче (или даже не будут проиндексированы). Энн Смарти (Ann Smarty) уже приводила детальный разбор этого явления, так что подробно останавливаться на этом не будем. Затем, к всеобщему облегчению, внезапно без всяких действий со стороны вебмастера все эти страницы появляются в выдаче.

Подробнее: Ваш сайт наказан Google?

  • Created on .
  • Last updated on .
  • Hits: 5100

Проблема заключается в том, что редактор использует абсолютный адрес сайта из файла configuration.php. При входе в панель управления Joomla нужно использовать такой же адреса сайта, что и в файле configuration.php в строке $mosConfig_live_site.
Допустим, если в файле configuration.php прописан адрес www.mysite.ru, то при входе в панель управления Joomla нужно заходить по адресу www.mysite.ru/administrator или же наоборот. Это позволит избежать появления белой страницы на сайте.

  • Created on .
  • Last updated on .
  • Hits: 6031

Вопросы СУБД MySQL

У меня случилось так, что все новые статьи/пользователи/категории/… приобретают ID=0. С чего вдруг?

Все дело в наличии аттрибута auto_increment в таблице, отвечающей за хранение заданных объектов. Для пользователей это таблица #__users и ее поле id. В phpMyAdmin надо всего лишь выставить данный аттрибут для заданного поля (чаще всего оно называется id). При работе на высоких версиях MySQL может возникать ошибка вроде «Duplicate entry '0' for key XXX». Как выставить авто_инкремент для какого-то поля написано в этом FAQ’е, прочитайте его до конца. 

Я получаю ошибку «DB function failed with error number 1016 Can’t open file: 'XXXXXX.MYI'.»

Надо в phpMyAdmin или консоли MySQL выбрать базу где стоит джумла и выполнить запрос

REPAIR TABLE XXXXXX

В случае если ошибка не исчезла — обратитесь к хостинговой компании.

 

При установке/экспорте дампа происходит ошибка «You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=latin1' at line XXX»

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

  • Правильно настроить параметры экспорта дампа (что-то про версии, там должен быть select-box со списком СУБД). Более точно это может быть переведено как совместимость (MYSQL40).
  • Руками в уже готовом дампе удалить все фразы вроде «DEFAULT CHARSET=latin1» и заменить «ENGINE=MyISAM» на «TYPE=MyISAM»

При переносе дампа возникает ошибка "You have an error in your SQL syntax ... use near 'DEFAULT CHARSET=cp1251 AUTO_INCREMENT=1' at line XX"

Этот вопрос аналогичен предыдущему. Новый MySQL не понимает старых конструкций определяющих кодировки таблиц (в 4.1 и 4.0 кодировки задаются разными командами). Надо руками удалить все вхождения "DEFAULT CHARSET = cp1251" или выбирать правильный тип экспорта дампа.

Как создать автоинкремент (auto_increment) для некоторых полей посредством phpMyAdmin

Заходим в phpMyAdmin. Выбираем нашу базу и нашу таблицу. Видим список полей доступных в этой таблице. Слева галочкой выбираем нужное нам поле и внизу нажимаем на карандашик, то есть переходим к редактированию поля. В столбике «Дополнительно» выбираем опцию auto_increment и нажимаем кнопку Сохранить. Теперь у поля должен появиться флаг auto increment.

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

У моего провайдера, нестандартный порт MySQL (не 3306 как обычно, а 666). Как мне установить Joomla

При указании хоста MySQL надо указать порт через двоеточие, например

localhost:1106

Может ли Joomla работать с СУБД отличными от MySQL

Нет. Поддержки других СУБД в ней нет. Это планируется в следующих версиях. Сложность внедрения mySQL в текущую версию обусловлена тем, что под J написано очень-очень-очень много всяких расширений, использующих враппер-класс database. Но этот класс не более чем обертка над функциями mysql_*, хотя и очень удобная. Ни о какой абстракции речи не идет. Везде и всюду используются чисто mysql-конструкции, которые легко не переносимы на другие диалекты. Так пошло со времен мамбы. В коде 1.5 никаких подвижек на данный момент нет. Хотя, собственно, никто и не обещал это именно в этой версии.

Возникает ошибка "Warning: mysql_query(): Unable to save result set in /xxx/includes/database.php on line 289"

Эта ошибка означает, что у вас испорчена одна из таблиц. Для ее устранения надо открыть phpMyAdmin и посмотреть список таблиц. Испорченная таблица будет выделена специальным сообщением (про нее что-то будет написано). Для примерной идентификации таблицы можно посмотреть какой компонент запущен, если это статья, то возможно это com_content или таблица com_categories. После определения таблицы стоит в окне исполнения SQL-запроса выполнить запрос "REPAIR TABLE имя_таблицы". Но помните, что операция восстановления может удалить данные, которые были испорчены и которые невозможно восстановить. Если есть бэкап (резервная копия) то лучше восстановить базу данных оттуда (но это в случае, если вы точно знаете, что таблица зависела от других таблиц), если же таблица ни от кого не зависела, то смысла восстанавливать базу целиком нет. О том, сколько строк было удалено вам будет сообщено в сообщении после исполнения данного запроса.

Как сделать дамп базы данных и что такое дамп

Дамп ("Dump", англ) - это слепок, образ базы данных на определенный момент времени записанный при помощи SQL-инструкций вставки/удаления данных. По сути это набор инструкций для СУБД как и куда она должна вставлять тот или иной текст. Задача создания дампа возникает при создании резервной копии сайта. Т.е. сайт на Joomla состоит из двух частей - базы данных и файлов написанных на php с программным кодом. И если вторые можно легко заархивировать на хостинге и скопировать домой, то резервную копию базы данных можно сделать в следующих программах-скриптах:

  • PhpMyAdmin - сейчас установлен практически на любом хостинге.
  • Sypex Dumper - скрипт для создания дампов, написанный русским программистом.
  • Staggered MySQL Dump Importer - создан для импорта больших объемов баз данных.

Очень важно обратить внимание на то, в какой кодировке делается дамп. Для Joomla RE (ветки 1.0.х) кодировкой, в которой она работает, является cp1251. Во-первых сам текстовый файл дампа должен быть в этой кодировке (заведите себе нормальный текстовый редактор, не пользуйтесь блокнотом, а используйте, например, Bred3, он умеет читать как минимум четыре кодировки), а во вторых в параметрах конструкции CREATE TABLE явно должна быть указана кодировка таблицы.

 Ошибка - mosmenu::store failed "Incorrect integer value: for column 'published' at row 1 SQL= ..."

Смотри следующий вопрос.

Ошибка - mosmenu::store failed "Out of range value adjusted for column 'id' at row 1 SQL=INSERT INTO ..."

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

Ошибка - moscontent::store failed "Duplicate entry '0' for key i SQL=..."

У столбца id (скорее всего) какой-либо таблицы потерялся параметр auto_increment. Такое может произойти, например, при переносе дампа базы данных, когда вы невнимательно выставляете параметры импорта в файл. Решением проблемы является выставление параметра auto_increment для нужной таблицы. Имя таблицы можно увидеть в теле запроса. Начинается оно (по умолчанию) со строки jos_, например jos_users. О том как выставить данный атрибут написано чуть выше.

DB function failed with error number 145 Table xxx is marked as crashed and should be repaired SQL = ...

В phpMyAdmin выполните следующий SQL-запрос:

REPAIR TABLE xxx

В случае если ошибка не исчезла — обратитесь к хостинговой компании. Причиной же возникновения самой такой ситуации может быть все что угодно. Начиная от сбоя файловой системы или зависания MySQL. Joomla или попытка взлома тут совершенно ни при чем. Просто сбой.

Ошибка - mossession::store failed DB function failed with error number 1044 Access denied for user 'XXX'@'%' to database 'ZZZ'

Эта ошибка означате, что возможно при переносе сайта вы забыли указать правильный логин или пароль в файл конфигурации configuration.php для доступа Joomla к базе данных MySQL. Если переводить дословно - доступ запрещен. А запрещен он может быть либо потому что не правильно указан пользователь, либо неправильно указан пароль. Скорее всего проблему можно решить установив для пользователя новый пароль или создав нового пользователя БД и наделив его правами на доступ к вашей базе данных.

  • Created on .
  • Last updated on .
  • Hits: 5455

В процессе решения некоторых проблем специалисты службы техподдержки  могут попросить вас проверить, открыт ли у вас (и вашего провайдера) какой-либо порт. Чтобы сделать это, нужно воспользоваться утилитой telnet:

  1. В Windows Vista и Windows 7 утилита telnet по умолчанию отключена, поэтому сначала необходимо ее установить, как это описано на сайте Microsoft. В Windows XP ничего устанавливать не надо.

  2. Если у вас Windows XP, выберите в меню «Пуск» пункт «Выполнить». В открывшемся маленьком окошке наберите команду cmd и нажмите кнопку OK.

    Если у вас Windows Vista или Windows 7, нажмите кнопку «Пуск», введите команду cmd в поле поиска и нажмите кнопку ОК.

  3. В открывшемся окне терминала наберите такую команду и нажмите клавишу Enter:

    telnet имя_сервера номер_порта

    Например, чтобы проверить, открыт ли порт, по которому раотает SMTP, надо ввести команду «telnet smtp.ваш_домен 25».

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

  • Created on .
  • Last updated on .
  • Hits: 41443

В процессе решения некоторых проблем специалисты службы техподдержки могут попросить вас прислать результаты команд tracert (трассировка маршрута) и/или ping к какому-либо сайту. Чтобы сделать это, нужно воспроизвести следующие действия:

  1. Выберите в меню «Пуск» пункт «Выполнить».

  2. В открывшемся маленьком окошке наберите команду cmd и нажмите кнопку OK.

  3. В открывшемся окне терминала последовательно наберите следующие команды (после ввода каждой из них нажмите клавишу Enter):

    tracert имя_сайта и/или
    ping имя_сайта

Подробнее: Как это сделать трассировку и пинг сайта или ресурса?

  • Created on .
  • Last updated on .
  • Hits: 12041

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

Основные моменты на которые стоит обратить внимание:

  • правильно ли вы обращаетесь к скрипту через браузер;
  • правильно ли настроены пути внутри скрипта;
  • правильно ли установлены права на файлы;
  • правильно ли указан путь к интерпретатору (для CGI-сриптов).

Обратите внимание, при переносе CGI-скриптов на сервер в настройках FTP-клиента необходимо включить ASCII-режим. Дело в том, что при написании скриптов в Windows многие редакторы использует символ возврата каретки, что может быть неверно интерпретировано программой, выполняющейся на хостинге в среде UNIX.

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

  • Created on .
  • Last updated on .
  • Hits: 4996

Если у вас не работает SSI, скорее всего проблема в том, что вы вставляете SSI-директивы в файлы с расширением .html, однако они работают только в файлах с расширением .shtml. Чтобы устранить эту проблему, измените расширения всех файлов, содержащих директивы SSI на .shtml.

Чтобы страница index.shtml отображалась при входе на сайт, необходимо создать файл .htaccess и прописать в нем директиву

DirectoryIndex index.shtml

  • Created on .
  • Last updated on .
  • Hits: 4893
  1. Войдите в свою контрольную панель и пройдите в раздел «Управление / Управление базами MySQL / phpMyAdmin».

  2. В выпадающем списке «Сопоставление соединения с MySQL» выберите пункт utf8_general_ci.

  3. Выберите свою базу данных (кликните по своему логину в левой части страницы).

  4. На открывшейся странице справа перейдите на вкладку «Операции».

Подробнее: На моем сайте вместо русских символов одни знаки вопроса. Как это исправить?

  • Created on .
  • Last updated on .
  • Hits: 6028

Веб-сервер настроен так, что по умолчанию он отдает все страницы в кодировке windows-1251 (cp1251). Но это поведение можно изменить, для этого создайте в нужной папке файл .htaccess и поместите в него такую директиву:

AddDefaultCharset имя_кодировки

Здесь имя_кодировки — название той кодировки, которая используется в ваших файлах. Кроме windows-1251 чаще всего используется кодировка UTF-8, в этом случае директива будет выглядеть так:

Подробнее: Загрузил файлы в кодировке UTF-8, но вместо русского текста в них «иероглифы». Как это исправить?

  • Created on .
  • Last updated on .
  • Hits: 9292

Продвижение сайтов. Создание сайтовРаскрутка в Интернете. Поисковое продвижение. Раскрутка сайтов. Создать сайт. Разработка сайта. Оптимизация сайтов. СЕО продвижение.