статическая генерация сайта

Илья2

Guest
статическая генерация сайта

мне кажется возможности PHP с точки зрения статической генерации не достаточно оценены :)

т.е. вполне можно создавать сайт _без_ поддержки php и базы данных, но который будет отображать базу данных :)

например я недавно сделал сайт на основе http://xml-sm.phplab.net (доработал где надо было), данные берутся из xml файлов (каталог постеров, багета), а эти файлы генерятся из CSV которые в свою очередь сохраняются из Excel файлов, т.е. отображает около 300 элементов сгруппированные по группам (тематика сайта - постеры)

если интересно могу дать ссылку для просмотрения результата.
(просто постановка заказчика была - без динамики :), вот я и сделал статическую генерацию)

если будет еще больше интересно то могу выложить и исходники как сделано.

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

Илья2

Guest
ну в общем не рассматривайте как рекламу (или рассматривайте) этот сайт - www.eya.ru
 

Rezec

По пиву? (socket80)
Как вариант - делается экзешник с файловой базой и впаривается клиенту вместе с его сайтом - типа "Будеш ты юзер сам править свой сайт". За сайт - одни дньги, а за сайт с прогой другие. Этот клиент за год один раз чета поправит - деньги за изменения небольшие, а так клиент рад, что у него супер дупер навароты, и программер с баблом, т.к. экзэ стоит бабла :)
 

Кром

Новичок
Мне не понятно, что такое "статическая генерация сайта"?
И вообще о чем речь? Об удобстве сопровождения?
Такой сайт на 7 страничек, делается с помощью PHP в одном скрипте на 10Кб.
Если речь идет о презенации нового подхода, то понятно. Но как попытка качественного сравнения с PHP, выглядит очень надуманно.
 

Crazy

Developer
Кром. подход "сгенерируем весь сайт в статике в оффлайне" очень хорошо подходит для снижения стоимости владения несложных проектов.
 

Кром

Новичок
Crazy, обьясни поподробней, если не трудно, что ты имеешь в виду под фразой "сгенерируем весь сайт в статике в оффлайне"? Это что, новое определение сайтов на чистом html? Или генерация страниц по крону раз в день?
Какие-то словесные конструкции, за которыми кроется неизвесто что :).
 

rihad

Guest
Или если хотите открыть домашнюю страничку на chat.ru :)

http://cynepnynep.chat.ru/

Думаю, идея ясна. Четыре html файла через makefile генерируются из своих препроцессорных сорсов, общие хедеры/футеры. Только вот меню (вертикальное и горизонтальное) для каждой странички разное, оно генерируется простеньким скриптом на Python и все это вместе (header + navbar_vert + body + navbar_horz + footer) склеивается в html файл препроцессором (mpp). И не нужна нам динамика :) Конечно, с ней удобней, но простенькие вещи можно и без нее.

Сорс всего: http://cynepnynep.chat.ru/0.zip
 

Кром

Новичок
>Или если хотите открыть домашнюю страничку на chat.ru

Нет я не понимаю вообще о чем речь! Какую страничку? Зачем она нам?
Ну даже если мы и хотим страничку мы идем на бесплатный хостинг с PHP, MySQL, shell и прочим. Создаем там index.php и пишем:
include ("header.php");
include ("menu.php");
include ("body.php");
include ("footer.php");
Если нам уж так понадобится что-то склеить...

Если даже можно без динамики, это не значит что нужно.
 

BlackWidow

Guest
Да уж, что-то непонятненькое. Согласен с Кромом.
 

Илья2

Guest
ок, тема закрыта - оффтопик :)
хотя смысл в том что на самом деле сделать нормальную генерацию страниц в статике сложнее чем php+MySQL на сервере. Я это понял :)

А преимущества, что не надо платить за php+mySQL (что возможно не очень то дорого), и потом сайт без труда ложится на CD.

Также преимущество что используется xslt трансформаци а на хостингах где такое найдешь? А о преимуществах xslt я рассказывать не буду :)

Генерация страницы в зависимости от запроса реализовано следующим образом, есть класс Request, которому устанавливаются разные значения параметра выборки (идентификатор темы), этот класс передается классу отвечающему за генерацию страниц, этот класс формирует xml в котором "переводит" объект класса Request в xml вид (ну и конечно все остальное относящееся к содержимому страницы), и далее на эту страницу накладывается xslt, которые по этому Request и осуществляет выборку из xml-базы-данных.
ну в общем ладно.
 

KR

alive in new life
на самом деле идея состоит в том, чтобы убрать PHP в целях экономии времени
у меня подобная иде тоже возникала, когда играясь только с заголовками Апача
можно создавать "умный кеш" для тех же самых интернет магазинов, а не тупо запрещать кеширование 4-мя строчками
Естественно, идея имеет смысл, если содержимое интернет магазина обновляется не очень часто (ориентировочно раза 2-3 в неделю). при более частом обновлении будем получть только дополнительные тормоза.

правда пока не реализовал.
 

Crazy

Developer
Автор оригинала: Кром
Crazy, обьясни поподробней, если не трудно, что ты имеешь в виду под фразой "сгенерируем весь сайт в статике в оффлайне"?
Как и всегда, "в оффлайне" означает работу не во время обращения пользователя, а в другое, более удобное время.

В частности, это может быть генерация статического HTML с последующей закачкой на сайт. Но это может быть и запускаемая по крону выборка данных из базы с последующим формированием HTML-страниц.
 

Crazy

Developer
Автор оригинала: Кром
Ну даже если мы и хотим страничку мы идем на бесплатный хостинг с PHP, MySQL, shell и прочим.
Зачем на сайте PHP+MySQL+Shell, если там нет ничего кроме информации о фирме, прайса и еще пары десятков страниц, обновляемых два раза в год? Чиста для понтов и чтобы срубить бабок с лоха-клиента?

В такой ситуации самый разумным -- с точки зрения интересов клиента -- спобом будет дать ему тулзу для управления контентом, которая позволяет секретарше неспешно в оффлайне вбить правки в прайс, а затем сама закачает их на сайт.

Зачем здесь PHP? Чтобы держать специального человека, который при каждой смене хостером версии PHP будет проверять "а не посыпалось ли это"? Да, с точки зрения человека, срабующего бабки за мелкую работу, это выгодно. Но не с точки зрения климента.
 

Илья2

Guest
также с точки зрения конкуренции, то заказчик думает что создание сайта со статическими страничками будет дешевле, по сравнению с динамическим сайтом, хотя при создании сайта используется PHP - результат статика.

вот и для вышеуказанного сайта, заказчик выбрал меня, т.к. я предложил цену ниже $400 за которую готовы были взяться за сайт другие люди :)

конечно это не хорошо, но бизнес есть бизнес :))
 

Илья2

Guest
2rihad:
если Python то можешь посмотреть
http://nemilya.by.ru/xmlSiteMakerPy/ это я перевел с PHP на Python (за один человеко день :) )

правда там надо изучить xslt, если будут вопросы задавай.

но зато это намного проще чем верстать html напрямую.

например на том же сайте eya я сделал для параграфа атрибут img="nameOfImage" и в этом случае слева появляется катинка {nameOfImage}.jpg если нет то не появляется.

т.е. <p img="photo1">это текст параграфа</a>
и при xslt трансформации содержимое страницы верстается как таблица, где в левой колонке будут картинки если они указаны для параграфа. с помощью css этого никак не получится.

потом меню (на первой странице, и вверху) строятся автоматически, также автоматом указывается навигация на следующую страницу в данном уровне. (я там /в xmlSiteMaker/ сделал еще многоуровневую вложенность, тогда появляется еще линейка "текущего-положения" в иерархии страниц )
 

Илья2

Guest
надеюсь google когда-нибудь его проиндексирует :)
 

Crazy

Developer
Опять же -- можно установить что-нибудь более менее устоявшееся (тот же mnogosearch).
 
Сверху