Как сделать чпу на сайте htaccess

Как сделать чпу на сайте htaccess
Как сделать чпу на сайте htaccess
Как сделать чпу на сайте htaccess
Как сделать чпу на сайте htaccess
Как сделать чпу на сайте htaccess

 

Думаю для начало необходимо поговорить о том зачем все это надо?

 

ЧПУ на сайте, в чем смысл?

 

Я не делал какие либо расследования, немного покопался в интернете, и вот чего нарыл. Сторонники за поделились на две группы:

Первые говорят, что такие адреса лучше воспринимаются человеком, как бы врезаются в память позволяя найти блог не через поисковик а прямиком через адресную строку. По мне так это чушь! вот адрес ссылки:
http://rio-shaman.ru/post/dobro-pozhalovat-v-cms-rs-blog-v2.html
Запомнили? Я думаю нет, а если даже и запомнили, то через неделю Вы не вспомните (естественно есть исключения, человек 10-12 но есть!) Вторые кричат что ЧПУ повышает шанс пробиться в ТОП поисковиков, так как поисковики понимают транслит, и натыкаясь на ключевое слово в ссылке засчитывают его как ключевое слово. Это куда ближе к истине.

Насчет людей из первой группы, я не говорю, что они на все 100% не правы, но ссылки заточенные под поисковики, а таких в интернете больше (намного больше), не реально запомнить, слишком много букф, другое дело если ссылка имеет вид:

http://rio-shaman.ru/post/1/

Но вот только беда, ключевого слова в таких ссылках нет, стало быть такие ссылки только для красоты, а на красоте в ТОП поисковика не уедешь (поисковику по фиг на красоту, он юзабилити определяет по поведенческому фактору)

Подумав решил для себя вот что. ЧПУ необходим только как средство SEO оптимизации, так как 5 из 10 человек вообще не знают что такое url, 7 из 10 на адресную строку не смотрят, а делать эстетические ссылки ради меньшинства считаю не рентабельным. Поэтому при выборе, какие ссылки делать, я выбрал вот такие:

http://rio-shaman.ru/post/dobro-pozhalovat-v-cms-rs-blog-v2.html

Если Вам необходимы ссылки другого вида, то Вы сможете создать их аналогично моим (я имею ввиду по урокам реализации ЧПУ, цикла "создать блог с нуля", что я планирую опубликовать), там расхождения в реализации минимальные

 

Как же делается ЧПУ на сайте, или магия файла htaccess (mod rewrite)

 

В общем то все очень легко. Некоторыми настройками сервера можно управлять через файл htaccess. Все кто когда либо создавал свои проекты в сети, видели такие файлы в директории сайта. У сервера apache есть модуль, так называемый mod rewrite который позволяет из динамических ссылок создавать ЧПУ ссылки.

Я сильно не разбираюсь во всем этом бреде, модули, настройки и тому подобное. Знаю только то как включить этот модуль и превратить динамичный адрес в ЧПУ

В общем разговора много, а по сути нужно лишь создать файл htaccess и прописать в нем вот такую строчку:

RewriteEngine on

После чего модуль mod rewrite можно считать включенным

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

 

Пример работы ЧПУ на моем движке

 

Сильно грузить Вас сегодня не буду, но дам пример из моего файла htaccess:

RewriteEngine on
RewriteRule ^post/([-a-z0-9]+.html)$ index.php?post= [L]

Первая строчка подключает модуль, вторая преобразовывает ссылку вида

http://rio-shaman.ru/post/dobro-pozhalovat-v-cms-rs-blog-v2.html

В ссылку вот такого вида

http://rio-shaman.ru/index.php?post=dobro-pozhalovat-v-cms-rs-blog-v2.html

То есть мы получаем следующее.

Пользователь в адресную строку прописывает (например щелчком мыши по ссылке на блоге) вот такую ссылку post/dobro-pozhalovat-v-cms-rs-blog-v2.html А сервер, для обработки, получает вот такую ссылку index.php?post=dobro-pozhalovat-v-cms-rs-blog-v2.html

Все счастливы, пользователь видит ссылку ЧПУ, а сервер видит динамическую, понятную ему каракозябру =))

После преобразований, скрипт блога находит в базе данных, в таблице blog, строчку, колонка которой равна "dobro-pozhalovat-v-cms-rs-blog-v2.html"

строка в базе данных

выводит из этой строчки id, заносит значение id в переменную blog. Хочу напомнить, что для вывода статьи из базы данных необходима именно эта переменная

формирование переменной blog

а дальше уже идет привычный алгоритм вывода текстов на страницу нашего блога

 

Что необходимо будет сделать для реализации ЧПУ на нашем блоге?

 

По мимо самого файла htaccess (этот файл самое простое в реализации ЧПУ) у нас сейчас нет колонки в базе данных, которая содержит имена ссылок (dobro-pozhalovat-v-cms-rs-blog-v2.html), поэтому нам необходимо будет создать такую колонку!

Необходимо будет написать функцию автоматического преобразование заголовков постов в трансилт, для генерации имен ссылок (dobro-pozhalovat-v-cms-rs-blog-v2.html)

Так же необходимо будет написать алгоритм с помощью которого по имени ссылки скрипт определит id записи.

Ну и самое сложное, это реализовать автоматическую смену ссылок на кнопках (ссылках) блога. Под раздачу попадет, например, модуль мини новостей и модуль меню.

Так же придется подумать о редиректе с несуществующих ссылок на страницу 404 ошибки.

 

Заключение

 

В общем работы до опы, но не будем отчаиваться, красивые ссылки требуют жертв =) Если Вам интересен мой блог, то подпишитесь на RSS ленту блога через ридер, или же по почте

Если у Вас есть какие вопросы то пользуйтесь формой ниже

Удачи Вам! На сегодня у меня все

Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess Как сделать чпу на сайте htaccess

Изучаем далее:



Интересные и быстрые прически для средних волос

Как сделать прикорневую химию на волосы фото

Что лучше праймер или основа под макияж

Как сделать нос к костюму бабы яги

Поздравления с днем рождения женщине главному инженеру лет
Читать новость Как сделать чпу на сайте htaccess фото. Поделитесь новостью Как сделать чпу на сайте htaccess с друзьями!