Дружественные поисковой системе URL - PullRequest
3 голосов
/ 23 мая 2011

Я работаю над созданием моей первой дружественной для поисковых систем CMS.Я знаю, что, возможно, одним из главных ключей к созданию сайта SEO является наличие URL-адресов, удобных для поисковых систем.Поэтому наличие такой ссылки:

http://www.mysite.com/product/details/page1

приведет к гораздо лучшему ранжированию, чем эта:

http://www.mysite.com/index.php?pageID=37

Я знаю, что для создания URL-адресов, подобных первому, у меня есть одиниз двух вариантов:

  • использовать веб-технологию, в данном случае PHP, для создания структуры каталогов
  • использовать надстройку Apache mod_rewrite для передачи этих URL-адресов в PHPпроцессор

Что касается PHP, я вполне доволен всем.Тем не менее, я думаю, что первый вариант будет труднее поддерживать.

Может кто-нибудь показать мне, как написать файл .htaccess, который будет:

  • молча направлять SEO URL-адресаскрипт процессора
  • не перенаправляет, если запрошенный URL-адрес является действительным каталогом на сервере

Есть ли способ лучше, чем тот, который я пробую?

Ответы [ 2 ]

7 голосов
/ 23 мая 2011

Вы можете использовать .htaccess для apache, создать файл в корневой папке в Интернете, в основном "htdocs", назовите его ".htaccess", добавить следующий контент к нему

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ index.php?url=$1 [QSA,L]
    Options -Indexes
</IfModule>

в вашем php файле вы можете получить доступ к данным из $ _GET

$_GET['url'];

Затем вы можете использовать данные для анализа того, что вам нужно.

0 голосов
/ 23 мая 2011

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

Простейшим способом сделать это было бы иметь файл PHP с именем product.php или product/details.php и использовать переменную $_SERVER\['PATH_INFO'\], чтобы выяснить, что запросил клиент.

...