- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Зачем быть уникальным в мире, где все можно скопировать
Почему так важна уникальность текста и как она влияет на SEO
Ingate Organic
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
Добрый день
такая ситуация
раньше на сайте стоял двиг и стать имели адрес следующий
site.ru/articles.php?lng=ru&pg=номер статьи
В связи с переходом на новый движок, файлы статей тепереь имеют вид articlesномерстатьи.php
и хотелось бы эти файлы перенести в папку article (например), чтобы не нагромождать корень сайта.
Посдкажите, что нужно прописать в .htaccess
Если на страницах используются ссылки href="articles.php?lng=ru&pg=номерстатьи"
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^articles\.php\?lng=ru&pg=([0-9]+) article/articles$1.php [QSA]
</IfModule>
Если на страницах используются ссылки href="articlesномерстатьи.php"
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^articles\.php\?lng=ru&pg=([0-9]+) articles$1.php [R=301,L]
RewriteRule ^articles([0-9]+)\.php article/articles$1.php [QSA]
</IfModule>
Если на страницах используются ссылки href="articles.php?lng=ru&pg=номерстатьи"
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^articles\.php\?lng=ru&pg=([0-9]+) article/articles$1.php [QSA]
</IfModule>
Если на страницах используются ссылки href="articlesномерстатьи.php"
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^articles\.php\?lng=ru&pg=([0-9]+) articles$1.php [R=301,L]
RewriteRule ^articles([0-9]+)\.php article/articles$1.php [QSA]
</IfModule>
хм, это штука требует мод реврайт от апача
а если только через htaccess?
Я попробовал, выдает 500 ошибку, в логе perhaps misspelled or defined by a module not included in the server configuration
то есть этого модуля нет на сервере
через .htaccess без мод реврайт никак.
Что за хостинг такой без мод реврайт? Или бесплатный?
если мод реврайт нельзя использовать то попробуйте в articles.php поставить php редирект на новый адрес статьи.
<?
$art_id=(int)($_GET['pq']);
if(is_int($art_id) && $art_id != 0){
header("Location: ./articles".$art_id.".php", TRUE, 301);
exit;
}
else{
header("HTTP/1.0 404 Not Found");
}
?>
здесь 301 редирект, чтоб старые урлы поисковики в своей базе похерили, а индексили тока по новым адресам.
отредактировал, была ошибочка
если мод реврайт нельзя использовать то попробуйте в articles.php поставить php редирект на новый адрес статьи.
<?
$art_id=(int)($_GET['pq']);
if(is_int($art_id) && $art_id != 0){
header("Location: ./articles".$art_id.".php", TRUE, 301);
exit;
}
else{
header("HTTP/1.0 404 Not Found");
}
?>
здесь 301 редирект, чтоб старые урлы поисковики в своей базе похерили, а индексили тока по новым адресам.
отредактировал, была ошибочка
чего то срабатывает, браузер при попытке открыть старую ссылку - зависает
P.S Я вообще то думал что htacces и mod rewrite разные штуки
строка
ErrorDocument 404 /pages/404.php
работает , (правда адрес в адресной строке не меняется)
по поводу хостинга, да у меня буквально неделю VPS а тут все самому надо включать, наверно просто что не включено
Смотрите логи и подправьте код, может с путями что-то не то.
На всякий спрошу: а код вставили только в articles.php ?
articles.php надеюсь не должен выводить эти статьи?
по замыслу этот файл только редиректит
Без доп. информации трудно что-либо еще посоветовать.
------- дубль ------
попробуй
<?php
if (!empty($_GET["lng"])) { $lng=$_GET["lng"]; }
else { $lng=0; }
if (!empty($_GET["pg"])) { $pg=$_GET["pg"]; }
else { $pg=0; }
if ($lng=="ru" && $pg) {
@header('HTTP/1.1 301 Moved Permanently');
@header('Location: http://www.site.ru/articles'.$pg.'.php');
}
else { @header("HTTP/1.0 404 Not Found"); }
?>
работает!
немного переделал, для того чтобы статьи были в каталоге
спасибо большое, пойду статьи доделывать