Установка joomla на linux
Попросили сделать сайт. Так как познаний в сайтостроении нет, то решил воспользоваться CMS joomla.
Все действия производятся на домашнем компьютере под управлением debian squeeze с прицелом на будущий перенос на хостинг.
Ставим необходимые пакеты:
aptitude install apache2 php5 mysql-server |
Заходим http://127.0.0.1/ Если видим «It works!», то все работает.
Скачиваем joomla
wget http: // joomlaportal.ru / downloads / joomla / Joomla_1.5.17-Stable-Full_Package-Russian.tar.gz |
Распаковываем:
tar
xzf Joomla_1.5.17-Stable-Full_Package-Russian.tar.gz
|
Создаем файл:
touch / etc / apache2 / sites-available / example.com |
Заполняем осмысленным содержимым:
< VirtualHost * : 80 > ServerAdmin admin @ example.com DocumentRoot / var / www / example.com DirectoryIndex index.php ServerName example.com ServerAlias www.example.com # Админка через SSL # Redirect /administrator https://example.com/administrator </ VirtualHost > |
Активирум сайт
a2ensite example.com |
Перезапускаем апач
/ etc / init.d / apache2 reload |
Прописуем резолв в /etc/hosts
127.0.0.1 localhost example.com |
Перезапускаем сеть
/ etc / init.d / networking restart |
Заходим http://example.com/
Выбираем русский
На странице “Начальная проверка” вылезло две ошибки:
MySQL поддержка Нет
configuration.php Доступно на запись Нет
Первая решилась как не странно установкой phpmyadmin
aptitude install phpmyadmin |
Вторая решается временной выдачей полного доступа на каталог joomla
chmod -R 777 / var / www / example.com |
Заходим http://localhost/phpmyadmin и создаем юзера. При создании указываем также создать базу данных и установить на нее для нашего юзера полный доступ.
Затем данные указанные в phpyadmin вводим при установке joomla на странице “Конфигурация базы данных”
Удаляем каталог installation
rm -r installation / |
Конечно рано или поздно сайт передет с локалхоста куда нибудь в интернет. Поэтому желательно произвести дополнительные настройки. Часть «дополнительных», а по сути необходимых, настроек можно произвести на локалхосте, а часть уже на сервере где будет хостится сайт.
Дополнительные настройки:
- Регистрируем нового юзера с правами суперадминистратора под которым будем админить нашу джумлу. Учетку admin удаляем. Но джумла не дает удалить учетку admin. Какая наглость с ее стороны, не правда ли? Решается просто. Необходимо понизить пользователя admin в правах, например, до зарегистрированного, а после безжалостно удалить.
-
Включаем ЧПУ.
В админке — Сайт → Общие настройки → Включить SEO -
Предоставляем доступ к админке лишь своему ip
В файле хоста, либо в .htaccess (если нет доступа к настройке апача) предоставляем доступ только своему ip, либо на худой конец если ip динамический, то диапазону ip.< Directory / var / www / example.com / administrator > AllowOverride None Order Allow,Deny Allow from 127.0.0.1 </ Directory >
-
Настраиваем SSL:
В файле хоста делаем редирект админки на https. А также добавляем кусок отвечающий, собственно, за сам https:
Добавляем в файл хоста:< VirtualHost 127.0.0.1: 443 > ServerAdmin admin @ example.com DocumentRoot / var / www / example.com DirectoryIndex index.php ServerName example.com ServerAlias www.example.com # Сертификаты GnuTLSEnable on GnuTLSPriorities NORMAL GnuTLSCertificateFile / etc / apache2 / ssl / example.com.crt GnuTLSKeyFile / etc / apache2 / ssl / example.com.key </ VirtualHost >
Как создать сертификаты было описано тут
Не забываем после всех проведенных манипуляций расставить необходимые пермишены:
find / var / www / example.com -type d -exec chmod 750 { } \; find / var / www / example.com -type f -exec chmod 640 { } \; |
А с путями установки джумлы не накосячили?
Что значит накосячил? Где хотел разместить сайт в файловой системе там и разместил.