|
|
|
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
mod_rewrite адназначна.
|
|||
|
||||
Mal Hack |
|
|||
Мудрый... Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Причем...
/index.html главная странца. /1.html и т.д. - страницы материала (тоже надо делаьть) /print.html -версия дл печати. И еще одна фишка. Вот есть главная категория, в ней ссылки на подкатегории: /subcat1.html /subcat2.html А уже в категориях сслки на материалы: /subcat2/mat1.html /subcat2/mat2.html |
|||
|
||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: нет Всего: 53 |
а может просто:
|
|||
|
||||
Mal Hack |
|
|||
Мудрый... Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Пооисковикам лучше html ки гнать. К тому же это просто строка которая разбивается по / и последний по .
|
|||
|
||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: нет Всего: 53 |
по-моему им уже давно пофигу.. просто ссылка www.example.com/en/about/ на мой взгляд выглядит лучше чем www.example.com/en/about.html и набирать легче |
|||
|
||||
Mal Hack |
|
||||
Мудрый... Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Большинству - да.
А мне вот наоборот с html более, так сказать циыильной кажется. |
||||
|
|||||
IZ@TOP |
|
||||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
Мне кажется что лучше все же не по id гнать категории и документы, а по алиасам, хотя можно учесть и тот и тот метод, кому как нравится.
Если где то в документах идет постраничная разбивка, тогда нумеруем все это дело
и т.п. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
||||
|
|||||
Irokez |
|
|||
индеец Профиль Группа: Участник Клуба Сообщений: 1180 Регистрация: 20.10.2004 Репутация: нет Всего: 53 |
а вообще будет круто, если можно будет настраивать вид ЧПУ.. к примеру:
{domain}/{cat}/{subcat}/{doc}.html или {domain}/{cat}/{subcat}/{doc}/ |
|||
|
||||
skalex |
|
|||
Хороший человек Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: нет Всего: 23 |
В своей CMF я делаю так:
1. через mod_rewrite все запросы на направляются на index.php (его я называю HTTP-контроллером) 2. есть xml-файл описания всех урлов и соответсвующий им последовательный процесс работы контроллеров: Пример такого xml-файла:
process - это контроллер. Имея соответсвующий метод он сам знает как генерировать URI, поэтому я вообще никогда не задумываюсь об этом. В данном случае схемы постоения URL - произвольны, а в CMS, которая будет базироваться на этой концепции будет иметь абстрактный контроллер, который будет реализовывать единую схему для любых разделов сайта. Например, все URL для реального сайта будут иметь вид: http://www.example.com/контроллер/режим[-par1-par2-...-parN].htm или http://www.example.com/режим[-par1-par2-...-parN].htm Я считаю такой подход крайне удобным. |
|||
|
||||
Opik |
|
|||
Эксперт Профиль Группа: Vingrad developer Сообщений: 1918 Регистрация: 6.10.2004 Где: Рига Репутация: нет Всего: 55 |
Mace
index.php показать можешь?) Добавлено @ 10:48 Мне нравится вариант Mace, кому то есть что добавить? |
|||
|
||||
Dexter |
|
|||
Эксперт Профиль Группа: Экс. модератор Сообщений: 1562 Регистрация: 2.7.2002 Где: Москва, Бирюлево Репутация: нет Всего: 4 |
Имхо, в таком варианте проще добавить индивидульные свойства и настройки каждому разделу... -------------------- The only thing you really know about me is... ...that's all you'll ever know |
|||
|
||||
skalex |
|
|||
Хороший человек Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: нет Всего: 23 |
Opik, а в index.php собственно ничего и нету, кроме подключения "ядра", его создания, запуска метода обработки запрошенного URL. Код показывать не имеет смысла, т.к. надо прикладывать код всего ядра. Могу рассказать как все это работает в моей реализации.
Физически ядро веб-приложения представляет собой экземпляр класса (Core), главной задачей которого является обеспечение интерфейсов хранения и обмена данных. Данные в основном складываются из конфигурационных переменных и переменных, создаваемых в процессе работы компонентов. Для управления ядром служит специальный класс CoreController (контроллер ядра). Этот класс статический и все его методы доступны из любого места веб-приложения. Вся работа веб-приложения происходит по этапам: 1. Инициализация Создание ядра, анализ (парсинг) конфигурационного XML-файла и сохранение его данных, подключение дополнительных модулей и пр. 2. Обработка запроса Последовательный поиск нужной ветки в схеме URL веб-приложения (в блоке <scheme/>) в зависимости от запрашиваемого URL. Имя ветки (атрибут regexp) - это регулярное выражение. С помощью него можно организовать удобную передачу параметров компонентам. Далее происходит последовательная отработка контроллеров (<process/>). Контроллер в связке с необходимыми компонентами может либо генерировать контент, либо произвести переадресацию, либо еще что-нибудь (в зависимости от конкретных задач). Как правило последним в этой цепочке идет контроллер, который получает сгенерированный ранее контент и выводит его в контексте обвязки сайта, за которую сам собственно и отвечает. 3. Завершение работы Формальный этап, где отрабатывают деструкторы компонентов и уничтожение ядра. |
|||
|
||||
Mal Hack |
|
|||
Мудрый... Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
А зачем это? |
|||
|
||||
skalex |
|
||||
Хороший человек Профиль Группа: Участник Клуба Сообщений: 895 Регистрация: 2.4.2004 Репутация: нет Всего: 23 |
Зачем что ? Зачем xml-файл или зачем вся эта городушка ? Когда пользователь запрашивает страницу нам надо знать какие контроллеры будут формировать ему ответ. Классический случай - два контроллера: первый - генерирует контент, второй - макет страницы. Но контроллеры могут и не генерировать контент, а производить какие-либо действия в зависимости от условий (например, перенаправлять пользователя на определенную страницу). Поэтому цепочка может состоять из любого кол-ва контроллеров. Имея набор таких контроллеров, можно выстраивать их работу, привязывая к запрашиваемым страницам. Описание всей этой схемы мне показалось удобным в XML-формате (заодно и познакомился более детально ). Или имелось в виду что то другое ? |
||||
|
|||||
CyClon |
|
|||
Опытный Профиль Группа: Участник Сообщений: 838 Регистрация: 3.12.2005 Репутация: нет Всего: 4 |
Не люблю я ваши ЧПУ ЖПУ и т.д.
По мне так: http://site.ru/?page=about http://site.ru/?page=conent&id=1 http://site.ru/?news=1 (Пага) http://site.ru/admin.php?op=users Вот это хорошо... Кстати, ненавижу, мля, когжа что-то вроде этого: http://site.ru/stories/4to_takoe_html_i_s_...dyat/index.html Или что тов этом роде... Нада по id делать ссылки на контент... |
|||
|
||||
Mal Hack |
|
|||
Мудрый... Профиль Группа: Участник Клуба Сообщений: 9926 Регистрация: 15.2.2004 Репутация: нет Всего: 261 |
Ну мало ли что тебе не нравится.
Ты кодишь не для себя, а для пользователей. Им легче запоминать без ?... |
|||
|
||||
borisvolfson |
|
|||
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 3.2.2005 Репутация: нет Всего: 3 |
CyClon
При сохранении файла будет не удобно искать файл по id... |
|||
|
||||
IZ@TOP |
|
|||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
-------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
rMaveric |
|
|||
Опытный Профиль Группа: Участник Сообщений: 375 Регистрация: 18.7.2003 Репутация: нет Всего: 6 |
Прошу прощения, но вроде вы немного не стого конца начали. Должно быть представлено любыми способами, у каждого есть свои плюсы и у людей есть свои предпочтения. Главное как это будет внутри.
Основная "проблема" - как человеку показать, то что он хочет и дать удобный механизм работы с системой. Иными словами требований 3: 1. Удобное добавление различных разделов и их администрирование 2. Создание разделов на основе различных обработчиков 3. Удобное создание самих обработчиков (модулей) Но при этом каждый из параметров должен быть независимым. пример общей схемы и принципов обработки. Пример трех ссылок которые должны отобразиться обсалютно одинаково http://www.articles.sitename.domain/pc-tec...ser.001374.html http://www.sitename.domain/pc-tech/article...ser.001374.html http://www.sitename.domain/articles/pc-tec...ser.001374.html и CMS должна отобразить все три ссылки одинаково (при наличии всех нужных настроек). З.Ы. Если кого интересует могу описать подробно свое видение парсинга URL, а также связать с имеющимся механизмом вызова обработчиков (модулей), также могу предложить свой механизм с нуля. -------------------- |
|||
|
||||
Wowa |
|
||||
Эксперт Профиль Группа: Админ Сообщений: 15017 Регистрация: 14.9.2000 Где: Винград Репутация: нет Всего: 290 |
А нагрузка? ИМХО выборка по ИД из базы будет намного быстрее, чем выборка по алиасу. |
||||
|
|||||
Semenov |
|
|||
Новичок Профиль Группа: Участник Сообщений: 22 Регистрация: 13.10.2006 Где: г. Набережные Чел ны Репутация: нет Всего: нет |
По id будет быстрее, но, имхо, надо думать не только о скорости, также и о юзабильности. Еще нужно url`ы точить под поисковики, т.к. у яндекса и гугла в планах урлы их транслитизировать, для улучшения поиска. Т.е. , к примеру, /o_nas.html - это есть "о нас", но это, как уже сказал, в будущем. Но нужно быть далновидными. Если уж взяли xslt, то почему же ссылки не делать под будущее?
|
|||
|
||||
redlinesoft |
|
|||
Новичок Профиль Группа: Участник Сообщений: 14 Регистрация: 4.8.2005 Репутация: нет Всего: нет |
Возвращаясь к вопросу о вариантах с .html или без онного, то стоит взглянуть на сайты того же Лебедева - все ЧПУ прописываются без .html... А раз уж он напрямую сотрудничает с Яндексом, то сомневаться в верности данного подхода не приходиться.
Это сообщение отредактировал(а) redlinesoft - 24.1.2007, 20:24 |
|||
|
||||
IZ@TOP |
|
|||
Панда-бир! Профиль Группа: Участник Сообщений: 4795 Регистрация: 3.2.2003 Где: Бамбуковый лес Репутация: нет Всего: 73 |
Поскольку данные о ветвях будут закешированы в памяти сервера или мемкешем, проблем с производительностью быть не должно. -------------------- Один из розовых плюшевых-всадников апокалипсиса... очень злой... Семь кругов ада для новых элементов языка Мои разрозненные мысли |
|||
|
||||
Wedmer |
|
|||
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 27.3.2008 Репутация: нет Всего: нет |
{domain}/{langcode}/{param1}/{param ....x}/
причем индексный скрипт должен обрабатывать $_SERVER['REQUEST_URI'] а не составной запрос. Так мы избавимся от головной боли при использовании других httpd. |
|||
|
||||
awers |
|
|||
Эксперт Профиль Группа: Участник Сообщений: 1465 Регистрация: 22.3.2006 Где: Россия, Таганрог Репутация: 3 Всего: 31 |
Вот кусочек документа.
ВотЪ ) Это сообщение отредактировал(а) awers - 14.2.2009, 09:16 |
|||
|
||||
fesor |
|
|||
Шустрый Профиль Группа: Участник Сообщений: 121 Регистрация: 16.7.2009 Где: Минск Репутация: нет Всего: 4 |
Можно изложить свои идеи касательно реализации чпу?
Не проще ли реализовать систему маршрутов (по аналогии скажем с YII Framework). Это возможно не такой быстрый способ как mod_rewrite (хотя кто знает) однако появляется позможность проверять $_GET данные или формировать этот массив самостоятельно что должно повысить уровень безопасности. Также это даст возможность пользователям изменять шаблоны путей. По поводу того что доступ к страницам должен быть организован по алиасам - тут вопрос спорный. Доступ к категориям без сомнений должен быть по алиасам. Также как и к статическим страницам. Но допустем в новостной ленте использовать это имхо бред. НИРАЗУ невидел чтобы кто-то вводил название топика. Возможно такие люди и есть но назвать это дружелюностью для пользователя я не могу. Если имеются большие объемы контента то навигацию проще производить исключительно по ID. |
|||
|
||||
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Vingrad CMS | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |