Простой WEB сервер на ubuntu, для Битрикс

17702  |  9

Расскажу как по быстрому сконфигурировать WEB сервер для работы с Битрикс. Безо всяких nginx и прочего, для высоконагруженных проектов конечно не пойдет, но "просто сайт" вполне полетит. Итак после установки на ноутбук Sumsung P29 (ему вот уже 9 лет) с конфигурацией Celeron M- 1.4 Ghz, 700 Мб. оперативной памяти, жесткий IDE на 40 гигов, словом тот еще драндулет- установка Битрикс: Малый Бизнес 12, решение интернет магазин выдает 52 балла производительности, все параметры самую капельку выше эталона.

Итак устанавливем основу

Устанавливаем Apache

sudo apt-get install apache2 

Установка PHP и библиотеки для работы с графикой:

apt-get install apache2 apache2.2-common apache2-doc apache2-mpm-prefork apache2-utils libexpat1 ssl-cert libapache2-mod-php5 php5 php5-common php5-gd php5-mysql php5-imap php5-cli php5-cgi libapache2-mod-fcgid apache2-suexec php-pear php-auth php5-mcrypt mcrypt php5-imagick imagemagick libapache2-mod-suphp libruby libapache2-mod-ruby

Чтобы Apache подхватил только что установленный PHP перезагрузим его командой:

sudo apache2ctl restart

Установка MySQL

sudo apt-get install mysql-server

в процессе установки попросит ввести пароль, придумайте самостоятельно

Установка PhpMyAdmin

sudo apt-get install phpmyadmin

в процессе запросит пароль от MYSQL - тот самый что вводили выше. Все основа готова, на этом вполне заработает сайт.

Запиливаем под Битрикс

Для повышения производительности, да и вообще по требованиям Битрикс к серверу, на нем должен быть установлен APC (на самом деле не только он подходит, можно поставить eAccelerator, XChache и.т.д) 

Устанавливаем оной вводя команды по одной (хотя наверное можно и хором)

sudo apt-get install php-pear
sudo apt-get install php5-dev apache2-prefork-dev build-essential
sudo pecl install apc

Дальше создаем и открываем файл настроек APC

nano /etc/php5/conf.d/apc.ini

прямо туда копируем вот это

extension=apc.so
realpath_cache_size=4096k
apc.ttl=1
apc.max_file_size=4M
apc.shm_size=128M //вот тут достаточно и 96М, но я предпочитаю 128

Теперь ускорим работу MYSQL

открываем

nano /etc/mysql/my.cnf

и добавляем в него (можно куда-нибудь в середину)

innodb_flush_log_at_trx_commit = 0
innodb_buffer_pool_size = 128M
innodb_flush_method = O_DIRECT
transaction-isolation = READ-COMMITTED
table_open_cache = 600 //тут самостоятельно

ну вот и все, остально, например php.ini уже докручивайте на свое усмотрение, с этими настройками Битрикс вполне летает на компе средней паршивости

Дополнение с демагогией - установка memcache на ubuntu server с битрикс сайтом, для ускорения (под высоконагруженные проекты, для всякой мелочевки не стоит заморачиваться)

PS: установка Webmin на ubuntu. Что бы было проще:

Добавляем необходимые пакеты

apt-get install perl libnet-ssleay-perl openssl libauthen-pam-perl libpam-runtime libio-pty-perl apt-show-versions

Скачиваем ключи

wget http://www.webmin.com/jcameron-key.asc

Добавляем их

apt-key add jcameron-key.asc

Добавляем в самый конец sources.list

nano /etc/apt/sources.list

deb http://download.webmin.com/download/repository sarge contrib

Скачиваем ключи

wget http://www.webmin.com/jcameron-key.asc

Обнавляемся и устанавливаем webmin

sudo apt-get update

sudo apt-get install webmin

Дожидаемся конца установки и после WEBMIN доступен по адресу

https://ВАШ_IP:10000

И еще одна маленькая вещь

Лично я держу пару таких серверов на домашнем компьютере. То есть на однй, достаточно мощной машине установлено 5 виртуальных машин с простенькими параметрами. Так у меня роутер, и виртуальные машины получают IP адреса по DHCP. необходимо задать им статичные IP адреса. По большей сути это актуально и для еденичного компьютера в домашней сети

Идем в nano /etc/network/interfaces и приводим к виду:

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.0.58 //Здесь указываем свой желаемый IP
netmask 255.255.255.0

Перезагружаем сеть /etc/init.d/networking restart и идем в nano /etc/hosts Приводим его примерно к такому виду:

1127.0.0.1 localhost.localdomain localhost

192.168.0.58 server.example.com server //повторяем свой IP и адрес

# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Выполняем:

echo server.example.com > /etc/hostname
/etc/init.d/hostname restart

B проверяем:

hostname
hostname -f

Теперь они должны показать server.example.com.

Расскажи друзьям-то:
Уважаемый читатель! В связи с участившимся спамом в комментариях, возможность писать доступна только для зарегистрированных пользователей
Зарегистрироваться Войти Напомнить пароль
Или войти через социальную сеть:
Дмитрий
Будет ли руководство по CentOS 6 с полным описанием оптимизации сервера под Битрикс !?
Михаил Базаров
Цитата
Дмитрий пишет:
Будет ли руководство по CentOS 6 с полным описанием оптимизации сервера под Битрикс !?
Для CentOS особо смысла писать не вижу.
Как вариант можно:
На свежеустановленной Cent OS выполнить команды
1) wget http://repos.1c-bitrix.ru/yum/bitrix-env.sh - качаем скрипт установки
2) chmod +x bitrix-env.sh - делаем исполняемым
3) ./bitrix-env.sh - запускаем.
Начнется установка веб окружения, в процессе нужно будет только выбрать 4 или 5-ую версию. Рекомендую 4, но это субъективно.

После установки перезагрузить, и ввести новый пароль для пользователя root (само попоросит)

Открыть порты:
Поочереди выполнить команды:
iptables -I INPUT -p tcp --dport 25 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 443 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 5222 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 5223 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 8090 -m state --state NEW -j ACCEPT
iptables -I INPUT -p tcp --dport 8891 -m state --state NEW -j ACCEPT
service iptables save
/etc/init.d/iptables restart

Все, в итоге получите готовое веб окружение под битрикс (тоже самое что и в виртуальной машине битрикс)
Alex
Почему то данный способ не работает на firstvds, пишет что установлена более новая версия apache. Не подскажете где хотя бы взять руководство?
Михаил Базаров
Цитата
Alex пишет:
Почему то данный способ не работает на firstvds, пишет что установлена более новая версия apache. Не подскажете где хотя бы взять руководство?
Скорее всего apache уже стоит, можете пропустить это шаг. Да mysql наверное тоже.
Vakh
Здравствуйте. Все сделал по инструкции, но когда доходит до восстановления БД выдает ошибку
Error! mysql_connect('-', '-', '-')
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Михаил Базаров
Цитата
Vakh пишет:
Здравствуйте. Все сделал по инструкции, но когда доходит до восстановления БД выдает ошибку
Error! mysql_connect('-', '-', '-')
Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
Не правильно вводите данные для доступа к базе данных или просто ее не создали
Dmitry
Добрый день. Остановился на пункте "sudo pecl install apc" выдает вот такую ошибку:

[CODE]bitrix@ubuntu:~$ sudo pecl install apc
downloading APC-3.1.13.tgz ...
Starting to download APC-3.1.13.tgz (171,591 bytes)
.....................................done: 171,591 bytes
could not extract the package.xml file from "/build/php5-FncNNb/php5-5.5.9+dfsg/pear-build-download/APC-3.1.13.tgz"
Download of "pecl/apc" succeeded, but it is not a valid package archive
Error: cannot download "pecl/APC"
Download failed
install failed[/CODE]

До этого вроде установка шла без ошибок.
Дмитрий Дмитриевич Алимов
Привет, функции MySQL, не установлены, убунту.. как быть?
Дмитрий Дмитриевич Алимов

© 2011—2016 Частный вебмастер: ИП Базаров, ОГРНИП: 315784700173692. Работает на 1С-Битрикс.
Копирование материалов запрещено: "ГК РФ, часть 4, раздел VII: Права на результаты интеллектуальной деятельности".

Информация размещенная на сайте, не является публичной офертой. Политика конфеденциальности
x
Как к Вам обращаться? *
Ваша электронная почта: *
Доп. материалы (логотип, тех. задание):
 
Обзор
Текст сообщения: