SEO Friendly URL - PullRequest
       3

SEO Friendly URL

2 голосов
/ 14 мая 2011

Мне нравится, как SO дает ссылку на вопрос. Как и в этом вопросе, есть ссылка http://stackoverflow.com/questions/6002203/seo-friendly-url, где заголовок вопроса seo-friendly-url

Я создаю блог, в котором я хочу дать ссылку вТочно так же, как и в PHP?
Любые предложения приветствуются:)

Структура таблицы

  • ID
  • Заголовок
  • Теги
  • Категория
  • UID

Added
Я использую PHP / APACHE и никаких фреймворков!Я не хочу использовать какой-либо блог, хочу создать свой собственный

Ответы [ 3 ]

5 голосов
/ 14 мая 2011

Я не уверен, почему люди так намеренно тупы здесь ...

То, что вы ищете, это mod_rewrite, модуль apache для перезаписи URL.

В вашем файле .htaccess (вам может потребоваться сделать это) укажите:

<IfModule mod_rewrite.c>
RewriteEngine on

RewriteRule ^blog\/([0-9]+)\/.*$ /blog.php?post=$1 [L]
</IfModule>

Это означает, что когда вы заходите на /blog/10/any-old-bit-of-text/ за кулисы, оно идентично тому, что вы посещали /blog.php?post=10.

Бит ([0-9] +) называется регулярным выражением (или регулярным выражением) и соответствует любому числу. .* означает совпадение с чем угодно. ^ привязывает к началу запроса и $ привязывает к концу. косые черты (/) экранируются как \/.

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

Вы можете использовать PHP и Apache вместе.Конкретно Apache Forcetype. В этой статье объясняется, как использовать Forcetype .

Допустим, у вас есть такой URL-адрес: http://www.example.com/article/seo-friendly-example

Файл .htacess будет выглядеть следующим образом:

<Files article>
  ForceType application/x-httpd-php 
</Files>

PHP будет выглядеть примерно так:

<?php
    list(,$slug) = explode("/", $_SERVER['REQUEST_URI']);
?>

Значение $slug будет seo-friendly-example.Это будет ключ в вашей базе данных для этой статьи.

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

Прежде всего, вы не написали, какой фреймворк вы используете. Я опишу, что вы хотите сделать на платформе Symfony

Первое решение

http://www.symfony -project.org / Jobeet / 1_4 / Doctrine / ен / 05 # chapter_05_route_customizations

  1. Измените маршруты, чтобы механизм маршрутизации понял "Хорошие URL"
  2. Измените действие контроллера, отвечающее за поиск нужной записи в вашей статье

Вы можете улучшить решение, объявив функцию sluging и использовать ее непосредственно в маршрутах

Второй раствор

Используйте любое решение для ведения блогов, которое уже поддерживает его - как написано ceejayoz

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