Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия Последняя версия Следующая версия справа и слева | ||
wiki:web-server [2012/05/07 12:59] [Персональные настройки] |
wiki:web-server [2016/05/06 11:44] [Персональные настройки] |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | Решил оформить наконец своё HOW-TO на форуме ([[http://forum.ubuntu.ru/index.php?topic=52552.0]]) в нашей вики, т.к. это правильнее и форматирование здесь удобнее. Я постарался изложить материал кратко, намеренно упустив подробности, которые не относятся напрямую к сути (вроде того, что конфиги сервера нужно править от рута). Считаем, что читатель имеет базовый уровень работы с линукс-системами. | + | Решил оформить наконец своё HOW-TO на форуме в нашей вики, т.к. это правильнее и форматирование здесь удобнее. Я постарался изложить материал кратко, намеренно упустив подробности, которые не относятся напрямую к сути (вроде того, что конфиги сервера нужно править от рута). Считаем, что читатель имеет базовый уровень работы с линукс-системами. |
- | <note important>Предложения и правки просьба писать в тему на форуме.</note> | + | <note important>Обсуждение статьи - http://forum.ubuntu.ru/index.php?topic=52552.0 |
+ | |||
+ | Просьба к редакторам тоже там отписываться | ||
+ | |||
+ | --- [[user>thunderamur]] | ||
+ | </note> | ||
====== Базовая установка и настройка веб-сервера ====== | ====== Базовая установка и настройка веб-сервера ====== | ||
Строка 9: | Строка 14: | ||
===== Установка ===== | ===== Установка ===== | ||
- | <code>apt-get install apache2 php5 php5-mysql mysql-server phpmyadmin</code> | + | <code>apt-get install lamp-server^ phpmyadmin</code> |
- | + | ||
- | <note>apache2 - веб-сервер | + | |
- | + | ||
- | php5 - интерпретатор языка php | + | |
- | + | ||
- | php5-mysql - для работы с мускулем из php | + | |
- | mysql-server - СУБД MySQL | + | <note> |
+ | lamp-server^ - поставит базовый набор lamp (Linux Apache Mysql PHP). | ||
phpmyadmin - веб-интерфейс для управления БД MySQL.</note> | phpmyadmin - веб-интерфейс для управления БД MySQL.</note> | ||
+ | <note important>Иногда при копипасте кода установки может вылезать ошибка, что какой-то пакет не найден. На самом деле все правильно, просто глюк копипаста. Решение вбить руками команду или попробовать стереть название проблемного пакета вместе с пробелами по краям и вбить руками только его.</note> | ||
===== Настройка Apache ===== | ===== Настройка Apache ===== | ||
==== Персональные настройки ==== | ==== Персональные настройки ==== | ||
- | + | FIXME Начиная с версии Ubuntu Saucy (13.10) свои настройки следует писать в ///etc/apache2/conf-available//, активировать настройки следует с помощью команды //a2enconf//. | |
- | <note tip>Свои настройки следует писать в **/etc/apache2/conf.d**, т.е. создать там файл, например, myconf.conf и определить в нём свои настройки.</note> | + | <note tip>Свои настройки следует писать в **/etc/apache2/conf.d**, т.е. создать там файл, например, **myconf.conf** и определить в нём свои настройки.</note> |
<code>## Файл персональных настроек веб-сервера Apache | <code>## Файл персональных настроек веб-сервера Apache | ||
Строка 37: | Строка 38: | ||
## Установка кодировки UTF-8 по умолчанию | ## Установка кодировки UTF-8 по умолчанию | ||
AddDefaultCharset UTF-8</code> | AddDefaultCharset UTF-8</code> | ||
+ | |||
+ | <note tip>Для того, чтобы так же работали файлы php, которые начинаются с "**<?**" вместо "**<?php**" | ||
+ | нужно, чтобы в **/etc/php5/apache2/php.ini** было **short_open_tag = on**</note> | ||
<note tip>После внесения изменений в конфиги Apache, его нужно перезапустить, чтобы измнения вступили в силу</note> | <note tip>После внесения изменений в конфиги Apache, его нужно перезапустить, чтобы измнения вступили в силу</note> | ||
Строка 49: | Строка 53: | ||
* Идём в /etc/apache2/sites-available | * Идём в /etc/apache2/sites-available | ||
- | и создаём там файлы, названиями которых будут названия, создаваемых серверов, например host1.server1 и host2.server1 | + | и создаём там файлы, названиями которых будут названия, создаваемых серверов, например host1.server1.conf и host2.server1.conf |
в эти файлы пишем (здесь показано простейшее, подробнее можно заценить в файле default): | в эти файлы пишем (здесь показано простейшее, подробнее можно заценить в файле default): | ||
Строка 55: | Строка 59: | ||
<VirtualHost *:80> | <VirtualHost *:80> | ||
ServerName host1.server1 | ServerName host1.server1 | ||
- | DocumentRoot /home/thunder/www/host1.server1 | + | DocumentRoot /var/www/host1.server1 |
- | <Directory /home/thunder/www/host1.server1> | + | <Directory /var/www/host1.server1> |
AllowOverride All | AllowOverride All | ||
</Directory> | </Directory> | ||
Строка 66: | Строка 70: | ||
<VirtualHost *:80> | <VirtualHost *:80> | ||
ServerName host2.server1 | ServerName host2.server1 | ||
- | DocumentRoot /home/thunder/www/host2.server1 | + | DocumentRoot /var/www/host2.server1 |
- | <Directory /home/thunder/www/host2.server1> | + | <Directory /var/www/host2.server1> |
AllowOverride All | AllowOverride All | ||
</Directory> | </Directory> | ||
Строка 89: | Строка 93: | ||
====== Твики и трюки ====== | ====== Твики и трюки ====== | ||
- | <note tip>Этот раздел применять не обязательно, у вас уже всё работает после 1-го раздела. Однако вы можете найти здесь что-то полезное. Я рекомендую не обделить вниманием Ускорение (opcode cacher)</note> | + | <note tip>Этот раздел применять не обязательно, у вас уже всё работает после 1-го раздела. Однако вы можете найти здесь что-то полезное. Я рекомендую не обделить вниманием ускорение (opcode cacher)</note> |
===== Ускоряем сервер (Opcode Cacher) ===== | ===== Ускоряем сервер (Opcode Cacher) ===== | ||
Акселератор PHP — программа, ускоряющая исполнение сценариев PHP интерпретатором путём кэширования их байткода. | Акселератор PHP — программа, ускоряющая исполнение сценариев PHP интерпретатором путём кэширования их байткода. | ||
- | [[http://ru.wikipedia.org/wiki/%D0%90%D0%BA%D1%81%D0%B5%D0%BB%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80_PHP]] | + | [[http://ru.wikipedia.org/wiki/Акселератор_PHP]] |
- | ==== APC ==== | + | |
- | <code>apt-get install php-apc</code> | + | |
- | + | ||
- | Файл настройки /etc/php5/apache2/conf.d/apc.ini. Установки по рекомендациям CMS 1C-Битрикс: | + | |
- | + | ||
- | <code> | + | |
- | extension=apc.so | + | |
- | realpath_cache_size=4096k | + | |
- | apc.ttl=1 | + | |
- | apc.max_file_size=4M | + | |
- | </code> | + | |
- | + | ||
- | ==== XCACHE ==== | + | |
- | <code>apt-get install php-xcache</code> | + | |
- | + | ||
- | Файл настройки /etc/php5/apache2/conf.d/xcache.ini. Установки по рекомендациям CMS 1C-Битрикс: | + | |
- | + | ||
- | <code>realpath_cache_size = 4096k | + | |
- | xcache.size = 40M | + | |
- | xcache.slots = 8K | + | |
- | xcache.ttl = 1</code> | + | |
- | + | ||
- | Также можно указать число ядер вашего процессора: | + | |
- | + | ||
- | <code>xcache.count = 2</code> | + | |
- | + | ||
- | понятно, что это для 2-х голового. | + | |
- | + | ||
- | <note important>Однако, я получил при этом падение производительности в Битриксе на 5-10%. Попробуйте, мб в вашем случае будет рост.</note> | + | |
+ | <note important>Не устанавливайте сразу несколько акселераторов PHP, это не даст никакого результата.</note> | ||
+ | <note important>Начиная с версии PHP 5.5 в интерпретатор по умолчанию включён Zend OPcache. В этой связи, а также потому что данная статья описывает базовую настройку, из неё убраны описания установки php-apc и php-xcache</note> | ||
===== Выключаем автозапуск apache2 и mysql ===== | ===== Выключаем автозапуск apache2 и mysql ===== | ||
Строка 143: | Строка 119: | ||
<code>start on (net-device-up | <code>start on (net-device-up | ||
and local-filesystems | and local-filesystems | ||
- | and runlevel [2345])<code> | + | and runlevel [2345])</code> |
т.е. должно быть так: | т.е. должно быть так: | ||
Строка 155: | Строка 131: | ||
<note tip>по умолчанию mysql не принимает tcp соединения т.к. прослушивает только 127.0.0.1</note> | <note tip>по умолчанию mysql не принимает tcp соединения т.к. прослушивает только 127.0.0.1</note> | ||
+ | |||
+ | **/etc/mysql/my.cnf** | ||
<code># | <code># |