Нужна простая CMS. Должен ли я настроить существующую CMS или собрать ее с нуля? - PullRequest
1 голос
/ 01 февраля 2010

Я создаю ОЧЕНЬ простую услугу веб-хостинга, которая будет обслуживать малый бизнес типа ма и па.

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

Позже я хочу иметь возможность связывать свои собственные пользовательские веб-приложения с определенной страницей, поэтому CMS должна быть в состоянии удовлетворить эту потребность.

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

Есть идеи?

Ответы [ 6 ]

8 голосов
/ 01 февраля 2010

Даже «простая» CMS является довольно сложным приложением, когда вы начинаете делать такие вещи, как аутентификация пользователя, безопасность, масштабируемость и т. Д. Есть много вещей, которые вы можете ошибиться. Основные CMS там страдают от множества проблем с обслуживанием и ошибок безопасности, и над ними работает немало талантливых людей. Если вы думаете, что ваша CMS будет другой, я полагаю, что не будет. Вам нужно будет постоянно обновлять и поддерживать его. Если вы используете готовое решение, вы сможете извлечь выгоду из работы, которую выполняют другие разработчики. Если вы хотите написать свой собственный код, рассмотрите возможность настройки готовой CMS или добавления новых функций или исправлений ошибок.

Собственная CMS:

  • Полный контроль над функциями
  • Низкая стоимость
  • Легко для вас, чтобы понять
  • Только вы понимаете это и можете это исправить
  • Нет исправлений от других разработчиков

Готовая CMS:

  • Вы можете просто установить его, а затем сконцентрироваться на добавленной стоимости
  • Более крутая кривая обучения
  • Множество размещенных решений и онлайн-справка
  • Многие люди могут администрировать его, если вас нет рядом
  • Исправления ошибок и обновления безопасности выпускаются поставщиком
  • Более ограничены с точки зрения настройки и т. Д.
  • Кто-то должен следить за обновлениями и устанавливать их, иначе клиент может стать жертвой червя, такого как черви WordPress. С вашей собственной CMS менее вероятно, что кто-то создаст червя только для вас. (Но ваши клиенты все еще подвержены риску других проблем безопасности).

Рассмотрим типичные проблемы безопасности, с которыми сталкивается каждый веб-сайт: XSS, CSRF, SQL-инъекция, ошибки конфигурации, слабая безопасность, перехват сеанса, ошибки проверки параметров, условия гонки и т. Д. Вам необходимо обработать все эти случаи, кроме CMS поставщики уже делают это для вас.

Что касается вашего требования Java, веб-сервер Resin поставляется с интерпретатором PHP, который может позволить вам развернуть приложение PHP в Java, если вы выберете PHP CMS. Также через несколько часов должна быть возможность портировать движок PHP на другой контейнер сервлета (я думаю, что это GPL).

2 голосов
/ 01 февраля 2010

Вы обязательно должны изучить существующую CMS. Столько, сколько создание с нуля будет соответствовать вашим потребностям. Существующая CMS с живым сообществом (например, drupal или django) будет продавать фонды, основываясь на опыте других.

Это поможет избежать распространенных ошибок при создании CMS и позволит вам сосредоточиться на функциональности и создании вашего продукта, а не на создании инфраструктуры.

1 голос
/ 01 февраля 2010

Liferay? Вы начнете работать менее чем за 5 минут.

на основе Java, поддерживает Groovy

Если вы хотите, чтобы посмотреть, посмотрите на CMIS . (Забудь об этом, не умирай)

1 голос
/ 01 февраля 2010

Ознакомьтесь с Alfresco Community Edition, он основан на java и является первым, совместимым с CMIS 1.0. Вы можете создать веб-клиент / приложение на нем. Имеет интерфейс ftp, webdav, cifs, http.

0 голосов
/ 01 февраля 2010

Если вы хотите выяснить некоторые аспекты или преимущества / недостатки технологии Java EE, лучше написать собственную CMS только для практики.

Но прежде чем сделать это, просмотрите некоторые из существующих CMS, чтобы создать список плюсов и минусов.

Все существующие CMS / фреймворки / все, что не вписывается в вашу проблему, но вместо этого они слишком велики, чтобы охватить столько случаев, сколько может.

Еще одна вещь, о которой нужно подумать. Хотите, чтобы ваша CMS отлично работала в Google App Engine?

0 голосов
/ 01 февраля 2010

Я не могу себе представить, что не существует CMS, которая бы соответствовала этим требованиям.Хотя я не буду проводить исследования для вас; -)

...