Решение: ЧПУ без mod_rewrite

Тема в разделе "Mod Rewrite / htaccess / ЧПУ", создана пользователем vasill, 25 мар 2008.

Статус темы:
Закрыта.
  1. vasill

    vasill Постоялец

    Регистр.:
    18 мар 2008
    Сообщения:
    103
    Симпатии:
    33
    Вот красивый способ реализации ЧПУ, без mod_rewrite, с возможностью использовать ссылки на кириллице

    http://mysite.ru/статьи/заголовок_статьи/
    В .htaccess добовляем:

    <Files статьи>
    ForceType application/x-httpd-php
    </Files>

    А в файле "статьи" разбираем запросы

    Главное приимущество, нет нагрузки на сервер, легко реализовать любые виды ссылок, кириллица в ссылках
     
    Karlasan нравится это.
  2. avton0m

    avton0m Создатель

    Регистр.:
    27 янв 2008
    Сообщения:
    29
    Симпатии:
    4
    " кириллица в ссылках " не считаю это плюсом

    А сам код.. хм.. идея крутая, но большую систему так не посторить. Вот почему фрэймворки используют mod_rewrite?
     
  3. Marshan Busiko

    Marshan Busiko Постоялец

    Регистр.:
    29 сен 2007
    Сообщения:
    102
    Симпатии:
    77
    Это старый, давно известный вариант с обработчиком ошибки 404. Можно еще в .htaccess прописать:

    ErrorDocument 404 /index.php

    И в index.php вести разбор переменной $REQUEST_URI.

    Плюсы по сравнению с mod_rewrite - 1) простота реализации и 2)работает везде и всегда

    Основной минус такой схемы - 1) проблемы с поисковой индексацией и 2) проблемы с POST запросами к несуществующим в реальности страницам, т.е. к виртуальным формам.

    Так что mod_rewrite все же предпочтительнее.
     
  4. avton0m

    avton0m Создатель

    Регистр.:
    27 янв 2008
    Сообщения:
    29
    Симпатии:
    4
    Ваш способ к первому посту не имеет никакого отношения, так что не понятна строка "Это старый, давно известный вариант с обработчиком ошибки 404"

    Где же 404 ошибка?
     
  5. Marshan Busiko

    Marshan Busiko Постоялец

    Регистр.:
    29 сен 2007
    Сообщения:
    102
    Симпатии:
    77
    Это как еще один из вариантов обработчика. В первом топике не увидиел директивы FilesMatch, поэтому и подумал, что речь про 404 ошибку.

    А так - да, это отдельный вариант, не 404 ошибка. Вот тут более подробно все написано:

    http://spectator.ru/technology/php/user_friendly_urls

    4 варианта организации ЧПУ.
     
  6. vasill

    vasill Постоялец

    Регистр.:
    18 мар 2008
    Сообщения:
    103
    Симпатии:
    33
    В такой реализации этих минусов нет
     
  7. Atec

    Atec

    Регистр.:
    28 апр 2007
    Сообщения:
    296
    Симпатии:
    31
    Прочитал все статьи, минус у модреврайта походу только один "Минусы: Может не хватить мозгов. На хостинге может быть не установлен этот модуль."

    ИМХО способ предложенный ТС не имеет приемуществ для простых смертных, разве что если кострированный хостинг попадется, и то этот способ работает только если пхп не CGI... а это встречается гораздо чаще чем отключенный модреврайт...
     
  8. dogoff

    dogoff

    Регистр.:
    17 апр 2007
    Сообщения:
    195
    Симпатии:
    57
    а нагрузка? (я особо не спец), но судя по всему (взятого из интернета) mod_rewrite поедает допресурсы, и чем шире диапазон регулярных выражение, тем больше ресурсов (если я правильно понял)

    мне как нубопрограммисту тема ЧПУ интересна в плане: а как оно вообще должно быть

    1.Каковы приемущества чпу? для программиста "+" к опыту, и для клиента прграммиста возможность выбирать между "без чпу с экономией ресурсов" "с чпу FilesMatch с повышенным ограничением по хостингу с экономией ресурсов" и "с универсальным но в чем то мухастым (нагрузка, возможность ошибится) mod_rewrite".

    2. для поисковиков как по мне явной выгоды нет, но но оно как-то красивее, особенно при выдаче с подсветкой транслитированого запроса в адресе :)
     
Статус темы:
Закрыта.