Как сделать ЧПУ для сайта на PHP

Как сделать ЧПУ для сайта на PHP

Написано Denis

Категория: Программирование

(Человеко-Понятные Урлы) или SEF (англ. Search Engines Friendly url). Как правило, при разработке проектов на PHP, содержимое динамической страницы зависит от переданного через GET параметра и URL выглядит следующим образом:

yourdomain.com/index.php?id=201


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

yourdomain.com/201/

yourdomain.com/201.html

а ещё лучше:

yourdomain.com/name-page.html

Как это сделать? Рассмотрим самый простой вариант: наш сайт обрабатывает все страницы через файл index.php и содержимое страницы определяется только одной переменной – id. В таком случае механизм преобразования из /index.php?id=201 в /name-page.html будет иметь следущий вид:

 

Блок-схема обработки ЧПУ (SEF)

 

1) Определяем существует ли запрашиваемый путь в реальности. Если есть – отдаём файл, без дополнительной обработки, в противном случае необходимо загрузить index.php, который обработает несуществующий ЧПУ. Реализуется этот механизм при помощи правил, прописанных в файле с именем .htaccess.

Файл .htaccess должен находиться в корневой директории. Создать и править .htaccess можно в обычном текстовом редакторе.

 

Содержимое файла .htaccess:

 

RewriteEngine On – разрешаем серверу преобразовывать URL.

RewriteBase / – устанавливаем базовый URL.

RewriteCond %{REQUEST_FILENAME} !-f – проверяем, что запрошенной директории не существует.

RewriteCond %{REQUEST_FILENAME} !-d – проверяем, что запрошенного файла не существует.

RewriteRule . /index.php [L] – если два верхних условия выполнены – передаём обработку в файл index.php

 

MySQL

2) Создаём в БД табличку соответствий ЧПУ и ID_page примерно такого плана:

 

SEF
varchar(255)
ID_page
int(11)
index 1
page 2
page-name 3

 

PHP

3) Содержимое файла index.php, из комментариев в коде ясно, как это работает.

 

 

Вот, в целом, и всё ;).

610 комментариев к статье Мне интересно ваше мнение!

  1. Sandraniz:

    Hurry up to look into loveawake.ru you will find a lot of interesting things

    Click here>>>

    Show more!

  2. loverMal:

    Best girls who agree on everything click on sexlivuy.com
    go over and you will be extremely happy.

  3. SophiaSuilt:

    Hello. And Bye.
    ljyzifSuilt

  4. KeronSuilt:

    Hello. And Bye.
    vehfSuilt

  5. KristinaLEP:

    Есть кто дома? :)

  6. Vudogrel:

    Может быть.

  7. BruceSleby:

    gfg
    привет

  8. FrankSer:

    Самодельный ИВЛ против короновируса, не?
    http://coronavirus-protect.ru/diy/topic/ivl-svoimi-rukami/

    Аппарат Искуственной Вентиляции Легких своими руками реально?

    Из каких частей состоит?

    Из каких альтернативных самодельных узлов можно собрать аппарат с 10% функционала?

  9. 3aplus63Smict:

  10. ufkyzSuilt:

    Hello. And Bye.
    igoryushaSuilt

  11. Jesusked:

    Ради счет того, что мышечный протеин синтезируется в порядком некогда быстрее сообразно средствам введения в организм синтетически разработанного тестостерона и дигидротестостерона. Также спор восстановления организма впоследствии тренировки происходит в более короткие сроки, мышечная толпа в процессе наращивается быстрее. В организме обменные процессы ускоряются, и активируется мышечная память, снижается воздействие кортизола. Сообразно средствам всего перечисленного эффект от тренировок становится заметнее с каждым сразу когда пользоваться спорт стероид. С применением стероидов тренировки будут уходить намного продуктивнее, а действие довольно заметнее и заметнее. Сейчас не нужно погодить маломальски лет, воеже накачать мышцы и привести тело в форму. С применением стероидов вы в порядочно некогда быстрее сможете: набрать мышечную массу, в среднем через 5 прежде 15 килограммов после соло курс применения; снизить барыш содержания жира в организме, после счет уменьшения ее прослойки; улучшить свою самооценку и повысить либидо; синтезировать белок в организме; укрепить суставы, кости, связки и ткани.
    Источник:
    [url]http://hulk-shop1.blogspot.com/2020/03/blog-post.html[/url]
    [url]http://hulk-shop2.blogspot.com/2020/03/blog-post.html[/url]
    [url]http://hulk-shop3.blogspot.com/2020/03/blog-post.html[/url]
    [url]http://hulk-shop4.blogspot.com/2020/03/blog-post.html[/url]

  12. newsandfashionse.be:

    Spot on with this write-up, I absolutely think this amazing site needs a great deal more attention. I’ll probably be back again to read more, thanks for the info! newsandfashionse.be/travels/utslag-p-halsen-och-broestet.php utslag pa halsen och brostet

  13. newsandfashionse.be:

    Howdy just wanted to give you a quick heads up. The text in your content seem to be running off the screen in Safari. I’m not sure if this is a formatting issue or something to do with browser compatibility but I thought I’d post to let you know. The layout look great though! Hope you get the problem resolved soon. Thanks newsandfashionse.be/beauty/allt-om-broestfoerstoring.php allt om brostforstoring

  14. newsandfashionse.be:

    Normally I don’t read article on blogs, however I would like to say that this write-up very forced me to take a look at and do it! Your writing style has been amazed me. Thank you, quite nice post. newsandfashionse.be/trends/michael-kors-vaeska-kedja.php michael kors vaska kedja

  15. newsandfashionse.be:

    Thanks for any other informative site. The place else may I get that kind of information written in such a perfect approach? I have a mission that I am simply now working on, and I’ve been at the glance out for such info. newsandfashionse.be/music/aeta-innan-laeggdags.php ata innan laggdags

  16. aresgrb.se:

    What’s up, I desire to subscribe for this weblog to obtain latest updates, therefore where can i do it please help out. droopi.aresgrb.se/music/sm-blsor-i-ansiktet.php sma blasor i ansiktet

  17. aretenb.se:

    Have you ever thought about including a little bit more than just your articles? I mean, what you say is valuable and all. Nevertheless think of if you added some great graphics or video clips to give your posts more, “pop”! Your content is excellent but with images and videos, this site could undeniably be one of the best in its field. Amazing blog! lyacha.aretenb.se/travels/demaquillant-peau-grasse-et-sensible.php demaquillant peau grasse et sensible

  18. aresgrb.se:

    Hello! Do you use Twitter? I’d like to follow you if that would be okay. I’m undoubtedly enjoying your blog and look forward to new posts. lasib.aresgrb.se/relaxation/halloween-kostym-enkel.php halloween kostym enkel

  19. aretenb.se:

    I’m not sure why but this blog is loading incredibly slow for me. Is anyone else having this problem or is it a issue on my end? I’ll check back later on and see if the problem still exists. derle.aretenb.se/trends/rougeur-aux-pieds.php rougeur aux pieds

  20. aresgrb.se:

    I think this is one of the most vital info for me. And i’m glad reading your article. But wanna remark on few general things, The website style is wonderful, the articles is really nice : D. Good job, cheers brus.aresgrb.se/music/ovnstegt-andebryst.php ovnstegt andebryst


Оставьте комментарий Высказывайте свои мысли по этой теме


5 + = двенадать