Как создать постоянные ссылки на основе базы данных? - PullRequest
2 голосов
/ 16 февраля 2011

Я ищу способ перевести

http://www.mysite.com/articles.php?id=1

в

http://www.mysite.com/articles/name_of_article_from_field_in_database_with_id_1

Я в порядке с выполнением некоторого RewriteRule с Mod Rewrite, но я не уверен, как это сделать точно. Мои страницы написаны на PHP из базы данных MySQL.

Надеюсь, кто-нибудь подскажет, как это сделать!

Я знаю, что есть другие, которые ищут подобный ответ.

Еще раз спасибо!

NCoder

Ответы [ 2 ]

2 голосов
/ 16 февраля 2011

Вам понадобится правило перезаписи в конфигурации вашего веб-сервера, например, для перевода. /123 до /index.php?id=123 - это не проблема PHP как таковая.

0 голосов
/ 16 февраля 2011

Все перечисленное ниже может быть реализовано с помощью переписывания Apache. Вы можете найти множество учебников и документации о том, как это сделать.

Чтобы сделать постоянные ссылки красивыми и удобными для SEO, вы можете воспользоваться шаблоном example.com/article/how-to-do-stuff в качестве ссылки на статью под названием «Как делать вещи». Однако, если на вашем сайте будет много статей, все немного замедлится из-за текстового поиска в базе данных (это будет трудно достичь уровня, но давайте поговорим гипотетически).

В результате я бы порекомендовал использовать шаблон phpBB example.com/article/12345-how-to-do-stuff, где 12345 - идентификатор шаблона в базе данных (или любой другой идентификатор, достаточно быстрый для выбора. из дб). Это не все. «Должен» быть еще один шаг проверки, при котором текст из URL сравнивается с заголовком выбранной статьи, и возможное перенаправление на правильный URL.

...