используя SEO дружественный в PHP - PullRequest
1 голос
/ 18 сентября 2009

это URL-адрес, который я сейчас использую:

/index.php?page=1&title=articles

Я хочу получить URL-адрес как

/index/page-1/title-articles

используя SEO удобные для пользователя URL в PHP.

А как получить значение "заголовок"? Любой может помочь мне, пожалуйста.

Ответы [ 3 ]

3 голосов
/ 18 сентября 2009

Ознакомьтесь с модулем mod_rewrite и, возможно, с хорошей отправной точкой, этим руководством о том, как использовать его в PHP.

2 голосов
/ 18 сентября 2009

Я хочу получить URL-адрес как

/index/page-1/title-articles

Почему? У меня есть два возражения:

  1. index - не информация, и я сомневаюсь, что она принадлежит URI
  2. page-1, а также title-articles выглядит странно. Как и в случае с index, вы должны спросить себя, относится ли эта информация здесь. Если это так, уточните, что это ключ пары ключ-значение. Или удалите его полностью.

Таким образом, я предлагаю либо:

/‹article›/1

или

/‹article›/page/1

или

/‹article›/page=1

или

/‹article›[1]

или

/articles/‹article›/page/1

Или любая их комбинация. (В приведенном выше тексте ‹article› является заполнителем для реального заголовка, остальные слова являются литералами).

2 голосов
/ 18 сентября 2009

Вам необходимо обеспечить две вещи:

  1. ваше приложение правильно распечатывает новые URL, а
  2. ваш веб-сервер может понимать, что новые URL-адреса и перезаписывают их в вашу внутреннюю схему, или перенаправляет их обратно в ваше приложение, а ваше приложение делает все остальное.

Первая часть может быть просто выполнена с помощью

echo '<a href="/index/page-1/title-articles"> … </a>';

вместо

echo '<a href="/index.php?page=1&title=articles"> … </a>';

Вторая часть может быть выполнена с помощью функций отображения URl вашего веб-сервера (большинство веб-серверов имеют такой модуль, как mod_rewrite Apache ). С mod_rewrite следующее будет делать перезапись:

RewriteEngine on
RewriteRule ^index/([^/-]+)-([^/]+)(.*) /index$3?$1=$2 [N,QSA]
RewriteRule ^index$ index.php [L]

Первое правило будет извлекать по одному параметру за раз и добавлять его в запрос. Второе правило, наконец, перезапишет оставшийся /index URL-путь к /index.php.

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