Я новичок в переписывании URL. У меня есть завершенный сайт с URL-адресами, например abc.com/abc.php?id=54&title=abcd
. Прежде всего, мне нужны дружественные URL-адреса для SEO, например abc.com/abc/54/abcd
. Я знаю, что можно выполнить перенаправление URL-адресов в.htaccess (Но мне тоже нужно изменить все мои URL-адреса в коде). Могу ли я выполнить это, не изменяя весь код моего кода. Во-вторых, как не нарушать активы.
Нужна помощь. благодаря
Это правило можно использовать в файле DOCUMENT_ROOT/.htaccess
:
RewriteEngine On
RewriteBase /
RewriteRule ^([\w-]+)/([\w-]+)/([\w-]+)/?$ $1.php?id=$2&title=$3 [L,QSA]
Это позволит вам использовать abc.com/abc/54/abcd
в браузере, и он будет внутренне abc.com/abc.php?id=54&title=abcd
на abc.com/abc.php?id=54&title=abcd
.
Я знаю, что это будет очень спорный ответ, но имейте в виду... это ответ Googles на этот вопрос.
Для стольких людей они считают (потому что их учили), что динамические URL-адреса, такие как page.php?id=3&entry=65
, плохо для SEO.
Однако это было до... и это сейчас.
Фактически, с прогрессом, достигнутым поисковыми роботами, такими как "googlebot", верно обратное.
Лучше всего оставлять свои динамические URL-адреса, а не переписывать их (для целей SEO).
Этот отрывок из Google Webmaster Central...
Миф: "Динамические URL-адреса нельзя сканировать".
Факт: мы можем сканировать динамические URL-адреса и интерпретировать разные параметры. У нас могут возникнуть проблемы с обходом и ранжированием ваших динамических URL-адресов, если вы попытаетесь сделать ваши URL-адреса статичными и в процессе скрыть параметры, которые предоставляют полезную информацию Googlebot. Одна из рекомендаций - избегать переформатирования динамического URL-адреса, чтобы он выглядел статичным. Всегда рекомендуется использовать статический контент со статическими URL-адресами как можно больше, но в тех случаях, когда вы решите использовать динамический контент, вы должны дать нам возможность проанализировать вашу структуру URL-адресов, а не удалять информацию, скрывая параметры и делая их статичными.Означает ли это, что я должен избегать переписывать динамические URL-адреса вообще?
Это наша рекомендация, если только ваши перезаписи не ограничиваются удалением ненужных параметров, или вы очень старательно удаляете все параметры, которые могут вызвать проблемы. Если вы преобразуете динамический URL-адрес, чтобы он выглядел статичным, вы должны знать, что мы не сможем правильно интерпретировать информацию во всех случаях. Если вы хотите использовать статический эквивалент вашего сайта, вам может потребоваться преобразовать базовый контент, выполнив замену, которая действительно статична.... Однако, если вы используете переписывание URL-адресов (вместо того, чтобы делать копию содержимого) для создания статических URL-адресов с динамического сайта, вы можете причинить вред, а не хороший.
Вы можете прочитать полную статью здесь
Я нашел это, просто просмотрев термин "переписать URL для динамических страниц". (на yahoo... не Google)
И эта статья Барри Шварца.
Барри Шварц - редактор новостей Land Rover и владеет RustyBrick, консалтинговой фирмой в Нью-Йорке. Он также руководит поисковой системой Roundtable, популярным поисковым блоком по очень продвинутым темам SEM.
SEO friendly URLs
важны и для UX. Восприятие пользователя, когда он видит URL-адрес, такой как index.php?p=test&id=23
а не /test/this-is-my-phone-title
наверняка будет другим ... Вы должны принять все во внимание .. не только поисковые машины ..
Вы должны изменить все свои URL-адреса в коде. Другие функции не должны быть затронуты, поскольку переписывание .htaccess
будет указывать на старые URL-адреса.
Вы можете найти обходное решение для перенаправления пользователя с помощью javascript, но это не рекомендуется для SEO. Что-то вроде:
<a href="abc.php?id=54&title=abcd">abcd</a>
JS (jQuery):
$(document).ready(function(){
$('a').click(function(e){
e.preventDefault();
// parse the url to get its components
window.location = '/' + parsedURL.filename + '/' + parsedURL.queries['id'] + '/' + parsedURL.queries['title'];
});
});