Запуск typo3: различия между версиями
м (→Создание пользователя MySQL: +ссылка) |
м (→Настройка шаблона сайта typo3: ещё один опасный совет...) |
||
Строка 127: | Строка 127: | ||
В последней строке мы "переносим" путем создания символьной ссылки исходные тексты typo3 в то место, где они должны быть. | В последней строке мы "переносим" путем создания символьной ссылки исходные тексты typo3 в то место, где они должны быть. | ||
'''Обратите внимание: группе apache2 и тем более пользователю, под которым запущен веб-сервер, запись в корневой каталог сайта также не требуется! (лишь на отдельные подкаталоги вроде fileadmin, typo3conf, typo3temp, uploads согласно [https://docs.typo3.org/typo3cms/SecurityGuide/GuidelinesAdministrators/FileDirectoryPermissions/Index.html документации] проекта)''' | |||
=== Запуск веб-сервера === | === Запуск веб-сервера === |
Версия от 15:59, 12 сентября 2016
Запуск CMS typo3
Краткое руководство для тех, кто решил запустить у себя на компьютере CMS typo3. Это руководство не является полным и всеобъемлющем, и даже не является полностью корректным, ибо предлагает сделать вещи, которых делать не стоит. Но в качестве QuickStart, я надеюсь, оно может пригодиться.
Что необходимо для работы?
Собственно, необходима система typo3. На момент написания этой статьи в дистрибутиве (Сизифе) система представлена двумя пакетами: typo3_src и typo3-dummy. Для работы системы понадобятся сервер баз данных MySQL, веб-сервер Apache и дополнение PHP к нему.
Далее предполагается установка всего этого на чистую систему, где раньше этих пакетов еще не стояло. Очевидным образом предполагается, что система управления пакетами apt настроена и работает.
Установка MySQL
Нам потребуется работающий MySQL-сервер и клиент для обращения к нему. Установим их командой
apt-get install MySQL-server
По зависимостям будут автоматически установлены пакеты MySQL-client и libMySQL. После установки можно запустить сервер:
[root@host-15 ~]# service mysqld start Installing all prepared tables PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER ! To do so, start the server, then issue the following commands: /usr/bin/mysqladmin -u root password 'new-password' /usr/bin/mysqladmin -u root -h host-15.localdomain password 'new-password' Alternatively you can run: /usr/bin/mysql_secure_installation which will also give you the option of removing the test databases and anonymous user created by default. This is strongly recommended for production servers. ... ...
Обратим внимание на то, что система нас просит немедленно установить пароль для администратора базы. Выполним эту просьбу:
[root@host-15 ~]# mysql_secure_installation
Вместо пароля root'а нажимем ввод, а далее следуем за скриптом, задаем новый пароль, удаляем анонимных пользователей и т.п. Короче говоря, на все пункты отвечаем 'Y'.
Создание пользователя MySQL
Для того, чтобы typo3 смогла нормально функционировать, нам понадобится пользователь БД MySQL. Подключимся к базе пользователем root и создадим еще одного пользователя:
[root@host-15 ~]# mysql -u root -p Enter password: Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 10 Server version: 5.0.83 ALT Linux MySQL RPM Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> grant all privileges on *.* to 'typo3'@'localhost' identified by '12345' with grant option; Query OK, 0 rows affected (0.00 sec) mysql> quit Bye
В данном примере мы создаем юзера по имени typo3 с паролем 12345, который обладает полными правами творить что угодно на сервере БД. Внимание!!! Не делайте так на настоящем сервере!!! Изучите документацию на typo3 и создайте юзера с минимально необходимыми правами.
Установка пакетов typo3, Apache2, php
Теперь пришло время установить прочие нужные пакеты. Попытаемся установить пару пакетов, остальное подтянется по зависимостям.
[root@host-15 ~]# apt-get install typo3_src typo3-dummy Reading Package Lists... Done Building Dependency Tree... Done The following extra packages will be installed: ImageMagick ImageMagick-doc ImageMagick-tools apache2 apache2-base apache2-cgi-bin apache2-cgi-bin-printenv apache2-cgi-bin-test-cgi apache2-common apache2-datadirs apache2-html apache2-httpd-prefork apache2-httpd-worker apache2-icons apache2-mod_php5 libapr1 libaprutil1 libmm php-base php5 php5-curl php5-gd2 php5-libs php5-mbstring php5-mysql php5-suhosin typo3-apache2 webserver-cgi-bin-control webserver-common The following NEW packages will be installed: ImageMagick ImageMagick-doc ImageMagick-tools apache2 apache2-base apache2-cgi-bin apache2-cgi-bin-printenv apache2-cgi-bin-test-cgi apache2-common apache2-datadirs apache2-html apache2-httpd-prefork apache2-httpd-worker apache2-icons apache2-mod_php5 libapr1 libaprutil1 libmm php-base php5 php5-curl php5-gd2 php5-libs php5-mbstring php5-mysql php5-suhosin typo3-apache2 typo3-dummy typo3_src webserver-cgi-bin-control webserver-common 0 upgraded, 31 newly installed, 0 removed and 0 not upgraded. Need to get 12.1MB of archives. After unpacking 39.1MB of additional disk space will be used. Do you want to continue? [Y/n]
Как видно из приведенного лога, по зависимостям вытягиваются веб-сервер Apache2, язык php5, и несколько полезных библиотек :)
Настройка php
По умолчанию в АЛьТ настройки php таковы, что множество функций недоступно. Сделаем их доступными:
[root@host-15 ~]# control apache2-mod_php5 relaxed
Не делайте так на реальном сервере!!! Изучите, какие функции были включены этой командой (например, почитав содержимое файла /etc/control.d/facilities/apache2-mod_php5), и выберите только те, которые необходимы для typo3.
UPD для OVZ
Если
root@localhost ~ # control apache2-mod_php5 relaxed PHP Warning: PHP Startup: mm_create(0, /var/spool/apache2/sessions/session_mm_phpini0) failed, err mm:core: failed to acquire shared memory segment (No space left on device) in Unknown on line 0 PHP Warning: PHP Startup: mm_create(0, /var/spool/apache2/sessions/session_mm_phpini0) failed, err mm:core: failed to acquire shared memory segment (No space left on device) in Unknown on line 0 PHP Warning: PHP Startup: mm_create(0, /var/spool/apache2/sessions/session_mm_phpini0) failed, err mm:core: failed to acquire shared memory segment (No space left on device) in Unknown on line 0
то надо увеличить лимит по shmpages
Далее, нужно увеличить объем памяти, которые выделяется веб-сервером для php. Для этого найдите в файле /etc/php/5.2.9/apache2-mod_php/php.ini строку
memory_limit = 5M
и впишите другое значение лимита памяти, например
memory_limit = 32M
Настройка шаблона сайта typo3
Теперь необходимо перенести в рабочий каталог веб-сервера каркас сайта (из пакета typo3-dummy) и исходные тексты системы typo3 (из пакета typo3_src).
Первое осуществим копирование каркаса в каталог /var/www/html:
[root@host-15 ~]# cd /var/www/html/ [root@host-15 html]# mkdir site [root@host-15 html]# chown root:apache2 ./site [root@host-15 html]# chmod g+w,o-rwx ./site/ [root@host-15 html]# su -l apache2 -s /bin/sh -c 'cp -r /usr/share/typo3-dummy-4.2.8/* /var/www/html/site' [root@host-15 html]# [root@host-15 html]# ln -s /usr/share/typo3_src-4.2.8/ ./
В данном примере мы создаем каталог, делаем его владельцем группу apache2, изменяем права (владельцу и группе все, остальным ничего), и копируем в него файлы от имени пользователя apache2. Эта хитрая подготовка нужна для того, чтобы в данный каталог мог писать пользователь, от имени которого запущен веб-сервер, а прочие не могли.
В последней строке мы "переносим" путем создания символьной ссылки исходные тексты typo3 в то место, где они должны быть.
Обратите внимание: группе apache2 и тем более пользователю, под которым запущен веб-сервер, запись в корневой каталог сайта также не требуется! (лишь на отдельные подкаталоги вроде fileadmin, typo3conf, typo3temp, uploads согласно документации проекта)
Запуск веб-сервера
Все, можно запускать веб-сервер.
[root@host-15 ~]# service httpd2 start Starting httpd2 service: [ DONE ]
"Запуск" typo3
Открываем браузер, переходим по адресу http://localhost/site и попадаем на страницу настройки системы typo3:
Вводим имя пользователя и пароль для доступа к базе данных, и продолжаем настройку. За подробностями настройки пройдите в документацию по typo3, которая доступна на официальном сайте.