Роботы и сайтмап-генераторы видят сайт в том виде, в каком он им отдаётся :)
Посмотрите внимательно на внутренности html и вы наверняка увидите там "неправильные" ссылки.
Интересно, а если в access_log будет 1000 записей вызова кривущего скрипта, который за один вызов делает 1000 кривущих SQL-запросов к кривущей базе данных? сайт не будет ресурсоёмким? :)
Гражданин Хороший, возможно, какое-то нашествие поисковых ботов.
Попробуйте для них в robots.txt чего-нибудь написать, чтобы они не так интенсивно дёргали ваш сайт.
Если перевести сообщение об ошибке, станет ясно, что превышен лимит количества одновременных подключений в базе данных.
Выходы:
1. Оптимизировать движок
2. Сократить количество посетителей
3. Перейти на другой тариф
Этот метод называется "направить все запросы к несуществующим файлам в специальный скрипт".
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*) redirect.php
А этот скрипт уже каким-то образом поймёт, что же хочет пользователь, и отправит его на нужную страницу :)
А вроде говорят, что дубли страниц — это не по фен-шую?
RewriteRule ^%D0%BA%D0%BE%D0%BC%D0%BF%D1%8C%D1%8E%D1%82%D0%B5%D1%80%D1%8B$ computer.html [L]
Ну это по желанию, а то будет передоз колы ;)
RewriteCond %{REQUEST_URI} !.+\.html$
RewriteRule ^(index.php/cat/[^/]+)$ /$1.html [R=301,L]
неужели колу куплю на новый год )
RewriteRule ^(index.php/cat/.+)$ /$1.html [R=301,L]
RewriteCond %{REQUEST_URI} !.+\.html/page/\d+$
RewriteRule ^(index.php/cat/.+)(/page/\d+)$ /$1.html$2 [R=301,L]
RewriteEngine on
RewriteRule ^(.+\.html)/page/1$ /$1 [R=301,L]
Если "/page/1" бывает не только у страниц с ".html", то в правиле нужно просто убрать "\.html"