Проектирование скрипта

Статус
В этой теме нельзя размещать новые ответы.

phillip

Полезный
Регистрация
4 Сен 2007
Сообщения
411
Реакции
15
Делаю тут небольшой сайтик...
Пришел к такой системе:

Через хтацесс сделано перенаправление всех запрашиваемых урлов на файл-обработчик index.php
Допустим запрашивается domen.ru/news/tetrapak.html
Урл перенаправляется на index.php, внутри которого запрашиваемая пага определяется с помощью $_SERVER['REQUEST_URI'].
А все страницы у нас лежат в папке cache, при этом вместо слешей / мы ставим %.
Итого, при запросе domen.ru/news/tetrapak.html проверяется, есть ли файл по адресу cache/%news%tetrapak.html.
Если файл есть, отдаем его. Если нет, отдаем 404.

По-моему плюсы:
-ЧПУ, можем назначить любой адрес любому документу
-Быстрая работа

Минусы:
-Хз как ведет себя такой редирект через хтацес при больших нагрузках
-Может есть какие-то лучшие решения, а моя задумка велосипед

Кто как делает, кто что посоветует
 
я использую zend и не имею себе мозг. Если нужная какаято особая функциональность, то зф - хорошее решение. Если не нужна особая функциональность - юзаю цмс
 
Делаю тут небольшой сайтик...
Пришел к такой системе:

Через хтацесс сделано перенаправление всех запрашиваемых урлов на файл-обработчик index.php
Допустим запрашивается domen.ru/news/tetrapak.html
Урл перенаправляется на index.php, внутри которого запрашиваемая пага определяется с помощью $_SERVER['REQUEST_URI'].
А все страницы у нас лежат в папке cache, при этом вместо слешей / мы ставим %.
Итого, при запросе domen.ru/news/tetrapak.html проверяется, есть ли файл по адресу cache/%news%tetrapak.html.
Если файл есть, отдаем его. Если нет, отдаем 404.

По-моему плюсы:
-ЧПУ, можем назначить любой адрес любому документу
-Быстрая работа

Минусы:
-Хз как ведет себя такой редирект через хтацес при больших нагрузках
-Может есть какие-то лучшие решения, а моя задумка велосипед

Кто как делает, кто что посоветует

Твою задумку придумали еще несколько лет назад, видимо ты только об этом не знал. Итак:
1) $_SERVER['REQUEST_URI'] не начинается со слэша, тут "cache/%news%tetrapak.html" уже ошибка.
2) Вот эти 2 вещи нужны, чтобы запросы к реально существующим файлам и папкам не подвергались реврайту. В противном случае у тебя не будут подгружаться ни картинки, ни css-стили, ни яваскрипт:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
3)
Минусы:
-Хз как ведет себя такой редирект через хтацес при больших нагрузках
Почему же ты считаешь минусом то, в чем вообще ничего не смыслишь?
 
Твою задумку придумали еще несколько лет назад, видимо ты только об этом не знал.
я и не претендую на новизну, читай внимательно. наоборот, понимаю что велосипед выходит, и думаю может те кто до этого дошли, уже и улучшили сильно эту мысль, и развили что-то еще, в этом собственно и смысл темы ;)
$_SERVER['REQUEST_URI'] не начинается со слэша
начинается. только что перепроверил
Почему же ты считаешь минусом то, в чем вообще ничего не смыслишь?
я сделал предположение. потому что да, тут я не знаю! в других движках вроде тоже редиректы такие есть, и ничего, все держится. Но на одном форуме мне сказали что может падать. Лучше перестраховаться и узнать.
Итого, каков ответ на вопрос, будут проблемы с нагрузками или нет?
 
1) Что такое по-твоему "велосипед"?
2) редирект и преобразование url - это 2 разные вещи
3) нагрузка на сервер измеряется количеством запросов к серверу в единицу времени и уж никак не зависит от одного правила ЧПУ.
 
Что такое по-твоему "велосипед"?
"изобретать велосипед"- выполнять ненужную работу, которая была уже выполнена успешно другими, и есть готовое решение.

редирект и преобразование url - это 2 разные вещи
редирект- перенаправление. Так что тут смотря в каком контексте скажешь. В данном случае получается перенаправление с одного скрипта-обработчика на другой. То, что формально это разные вещи, это уже не относится к теме. Это перенаправление я и имел ввиду, не надо тут придираться что я слово не так сказал. Главное, что меня все прекрасно поняли, в том числе и ты.

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

редирект- перенаправление. Так что тут смотря в каком контексте скажешь
В любом контексте редирект остается редиректом, и это прямо указывает на твое незнание сетевых протоколов и принципа работы mod_rewrite.
 
имхо
% лучше не использовать вообще, если сильно хочется что то другое используй -
я строи им разделители в ЧПУ
они у меня вида
XPAGE . "?x=news&task=read&category={alias}&id={id}",
WWW . "news/{alias}/read-{id}-{seo}.html",
WWW . "news/{alias}/read-{id}-{seo}.html",
WWW . "news/read/{alias}/{id}-{seo}.html",
WWW . "news/read-{alias}-{id}-{seo}.html",
в {} подствляются переменные в процессе генерации кода,
там можно уплавлять степень вложености, чем губже тем хуже индексируется опять же мое субъетивное мнение... реально же индексируются ровно но готов к тому что просто смени правила и все)
первый тип чез всего)

еще лучше создать свой набор библиотек и юзать их, я вот создал мини пакет его приписываю к любому двигу, без проблем, так же строю на нем простые сайты, правдо двиг щас переживает не лучшие времена внедрение ajax, html5, css 3 и тач свистелок для айпонтов и андроидов
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху