Get Social

Выбор CMS для сайта-визитки

Как ни странно, своё знакомство с CMS я начал с друпала (потом узнал, что это ещё и CMF), потом познакомился с WordPress. Теперь, когда снова нужно сделать новый проект, я захотел расширить своё знакомство с CMS и решил сделать следующим образом.
В сети множество рекомендаций, что брать за основу для сайта-визитки – от статического html до таких монстров, как joomla. Я решил просто взять 4 разных CMS (с которыми я не знаком) и установить их на VPS. Выберу в конечном счёте ту, которая сразу понравится.

Делаем приготовления (домен уже зарегистрировали заранее). Условимся, что MY-NEW.DOMAIN – это имя домена.

cd /var/www/
mkdir {getsimple,hostcms,joomla,dle}-MY-NEW.DOMAIN

Скачиваем все CMS:
wget http://get-simple.info/dreamhost-pickup/GetSimpleCMS_3.3.0.zip
wget http://www.hostcms.ru/download/6/HostCMS.Free_6.1.tar.gz
wget http://joomlacode.org/gf/download/frsrelease/18934/133835/Joomla_3.2.0_Full_Package_Russian.zip
wget http://dle-news.ru/files/dle10.0_trial.zip

Распакуем в соответствующие каталоги:
unzip -d getsimple-MY-NEW.DOMAIN/ GetSimpleCMS_3.3.0.zip
mv getsimple-MY-NEW.DOMAIN/GetSimpleCMS-3.3.0/* getsimple-MY-NEW.DOMAIN/
rmdir getsimple-MY-NEW.DOMAIN/GetSimpleCMS-3.3.0
tar -xz -C hostcms-MY-NEW.DOMAIN/ -f HostCMS.Free_6.1.tar.gz
unzip -d joomla-MY-NEW.DOMAIN/ Joomla_3.2.0_Full_Package_Russian.zip
unzip -d dle-MY-NEW.DOMAIN/ dle10.0_trial.zip

Установим права:
chown -R nobody:nogroup {getsimple,hostcms,joomla,dle}-MY-NEW.DOMAIN

Теперь правим конфиг Apache:
nano /etc/apache2/conf.d/MY-NEW.DOMAIN.conf

——————————————
<VirtualHost *:80>
ServerName MY-NEW.DOMAIN
ServerAlias www.MY-NEW.DOMAIN
DocumentRoot /var/www/MY-NEW.DOMAIN # эту строку будем менять для каждой CMS
<Directory "/var/www/MY-NEW.DOMAIN"> # и эту строку будем менять для каждой CMS
AllowOverride All
Order deny,allow
Allow from all
AddHandler application/x-httpd-php .php .html
</Directory>
</VirtualHost>

——————————————

Перечитываем конфиг:
apachectl graceful

Создаём базу данных (на примере DLE) для тех CMS, которым она нужна:

mysql -u root -p
CREATE DATABASE dleuserdb;
GRANT ALL PRIVILEGES ON dleuserdb.* TO "dleuserdb"@"localhost" IDENTIFIED BY "dleuserdbpass";
FLUSH PRIVILEGES;
EXIT

Так какую CMS выбрать для сайта-визитки? Примечания.

— GetSimpleCMS —

Работает без Mysql и использует xml формат для хранения данных. Что ещё нужно для сайта визитки? Действительно, очень просто. Когда залили файлы, заходим по ссылке:
http://MY-NEW.DOMAIN/admin
Следуя подсказкам, устанавливаем CMS (у меня пришлось поменять права на папки data и backups, а также установить пакеты php5-gd и php5-curl, чтобы получить gd library и поддержку cURL).
Можно найти подробное описание CMS на русском языке на сайте тут

— hostcms —

Сразу запускается инсталлятор. Внешний вид – понравился. Далее запросил принять соглашение, где один из пунктов – обязательное размещение ссылки на официальный сайт… (3.4. Пользователь бесплатной редакции Программного продукта обязан разместить на каждом сайте, работающем с использованием Программного продукта, активную, индексируемую и видимую при просмотре сайта гиперссылку «Система управления сайтом HostCMS» на сайт Производителя http:слэшслшеwwwтчкhostcmsтчкru в глобальной сети Интернет.) Как-то это мне не понравилось… Ну что ж, идём до конца. Жмём “Далее” (у меня оказалось неустановлена поддержка xslt, ставим её: aptitude install php5-xsl; также пришлось поменять права на файл: modules/core/config/database.php и на папку: hostcms-user.pp.ua/hostcmsfiles/tmp )

— dle —

После того, как перенёс содержимое подпапки upload в корневую папку сайта, то сразу попал в инсталлятор. Всё, что нужно было сделать потом – отключить буферизацию вывода. Для этого открываем файл php.ini и ставим значение параметра: “output_buffering = Off” а также поменять права на некоторые файлы и папки с помощью команды chmod.

— joomla —

До CMS Joomla уже не дошли руки.

upd (12.12.16). и не дойдут…

Как быстро сделать блог на WordPress?

Всего несколько несложных шагов нужны, чтобы установить wordpress на чистом сервере.

[Шаг 1] Выбор доменного имени для блога.

Есть множество вариантов. Я исходил из того, что имя должно быть короткое и бесплатное. Возможно ли такое? На сегодняшний день — да. Это — имена в зоне pp.ua. Идём на pp.ua, читаем, что к чему, выбираем аккредитованного регистратора (я выбрал nic.ua). После регистрации увидел угрожающую моим скромным финансам запись — бесплатно можно использовать NS сервера только 3 месяца. Неужели выбрал не того регистратора? Однако, судя по тому, что написано здесь и здесь всё должно быть и дальше бесплатно. Посмотрим…

upd. да, сервера продлеваются каждые 3 месяца и они бесплатны для доменов, которые размещены на nic.ua
upd2. Сравнивая регистраторов доменов, нужно помнить, что не всегда дешевые предложения на самом деле дешевы. Может быть продление на 2-год гораздо дороже. Может быть нужно обязательно заказывать дополнительные услуги, такие как хостинг.

[Шаг 2] Выбор и установка CMS для блога.

Выбирал между Drupal и WordPress. Поскольку уже имел дело с друпал и 6-й и 7-й версии, то решил для расширения опыта поставить вордпресс. Иду на ru.wordpress.org и начинаю знакомится с движком. Далее, следуя инструкции ставлю движок на свой веб-сервер (предпочитаю Debian GNU/Linux в качестве платформы).

cd /var/www/

(текущая версия на официальном сайте wordpress всегда доступна по ссылке http://ru.wordpress.org/latest-ru_RU.zip или http://ru.wordpress.org/latest-ru_RU.tar.gz):

wget http://ru.wordpress.org/latest-ru_RU.tar.gz
tar -xzvf latest-ru_RU.tar.gz
mv wordpress mynewblog.pp.ua

[Шаг 3] Теперь создаём базу MySQL:

mysql -u root -p
 CREATE DATABASE blogdb;
 GRANT ALL PRIVILEGES ON blogdb.* TO "user"@"localhost" IDENTIFIED BY "pass";
 FLUSH PRIVILEGES;
 EXIT

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

[Шаг 4] Затем отредактируем конфиг Apache:

nano /etc/apache2/conf.d/mynewblog.conf

Вписываем сюда:

<VirtualHost *:80>
   ServerName mynewblog.pp.ua
   DocumentRoot /var/www/mynewblog.pp.ua 
 <Directory "/var/www/mynewblog.pp.ua">
   AllowOverride All
   Order deny,allow
   Allow from all
   AddHandler application/x-httpd-php .php .html
 </Directory>
</VirtualHost>

Вежливо просим Apache перечитать конфигурационные файлы:

apachectl graceful

[Шаг 5] Что получили?

Теперь можно заходить по адресу http://mynewblog.pp.ua и настраивать интерфейс этой CMS под свой новый блог.


P.S Для лучшей безопасности своего веб-сервера, можно настроить Apache для работы под другим пользователем:

# ставим multiuser MPM for Apache
aptitude install apache2-mpm-itk

# меняем владельца файлов wordpress
chown -R nobody:nogroup /var/www/mynewblog.pp.ua/

# разрешам запись группе для каталога wp-content
chmod -R g+w /var/www/mynewblog.pp.ua/wp-content

Потом добавляем в конфиг Apache такие строки (и снова его перезапускаем):

<Directory "/var/www/mynewblog.pp.ua">
  ...
  AssignUserID www-data nogroup
  ...
</Directory>