Простейший WEB-сервер на FreeBSD

Использовать FreeBSD и не поднять на нем целую кучу различных сервисов это не есть путь настоящего IT-джедая. Следовательно первым делом займемся настройкой WEB-сервера. Использовать будем самую распространенную связку: Apache+MySQL+PHP (Коротко — FAMP)

Для начала обновим порты. Дальше все довольно просто. Установка из тех же самых портов. Сначала установим сервер MySQL(вместе с ним установится и MySQL-клиент)

cd /usr/ports/databases/mysql55-server
make BUILD_OPTIMIZED=yes BUILD_STATIC=yes WITH_CHARCET=cp1251 WITH_XCHARSET=all WITH_COLLATION=cp1251_general_ci
make -DBATCH install clean

сборка с параметрами BUILD_OPTIMIZED и BUILD_STATIC повышает производительность нашего сервера баз данных, от которой грех отказываться, а параметр WITH_CHARCET=cp1251 WITH_XCHARSET=all WITH_COLLATION=cp1251_general_ci по умолчанию при создании БД позволит автоматически устанавливать правильные кодировки для отображения кириллических символов

при установке я привык использовать параметр -DBATCH, основная задача которого конфигурировать все порты по умолчанию. То есть при установке не будут высвечиваться окна настроек. Всё равно я практически ничего не меняю, особенно в зависимостях. Если же необходимо изменить начальную конфигурацию лучше использовать

make config

Добавим MySQL в автозагрузку и сразу же его запустим

echo 'mysql_enable="YES"' >> /etc/rc.conf
/usr/local/etc/rc.d/mysql-server start

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

/usr/local/bin/mysqladmin -uroot password 'new-root-password'

Возьмемся за Apache. Установка ничем не сложнее:

cd /usr/ports/www/apache22
make -DBATCH install clean
echo 'apache22_enable="YES"' >> /etc/rc.conf

конфигурацией займемся позднее, так как для начала установим интерпретатор PHP. Его так же необходимо будет настроить

собственно установка PHP

cd /usr/ports/lang/php53
make config 
# тут необходимо выбрать [Х] APACHE Build Apache module
make -DBATCH install clean
cd /usr/ports/lang/php53-extensions
make -DBATCH install clean

Далее необходимо создать файл с настройками php.ini. На самом деле просто скопировать предложенный.

cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini

Небольшие настройки Apache
Для того, что бы Apache корректно обрабатывал PHP необходимо добавить в конфигурационный файл /usr/local/etc/apache22/httpd.conf следующие строки:

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

и поправить секцию DirectoryIndex на

DirectoryIndex index.php index.html

и вот уже после этого можно стартовать Apache

/usr/local/etc/rc.d/apache22 start

И проверим, как оно запустилось

root@ipfw:/usr/home/gleb # ps aux | grep httpd
root 9044 0.0 2.3 21144 11356 ?? Ss 11:59AM 0:00.61 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9045 0.0 2.3 21144 11388 ?? I 11:59AM 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9046 0.0 2.3 21144 11424 ?? I 11:59AM 0:00.01 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9047 0.0 2.3 21144 11420 ?? I 11:59AM 0:00.01 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9048 0.0 2.3 21144 11380 ?? S 11:59AM 0:00.01 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9049 0.0 2.3 21144 11388 ?? I 11:59AM 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9050 0.0 2.3 21144 11380 ?? I 11:59AM 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9051 0.0 2.3 21144 11380 ?? I 11:59AM 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEP
www 9052 0.0 2.3 21144 11380 ?? I 11:59AM 0:00.00 /usr/local/sbin/httpd -DNOHTTPACCEP
root 9800 0.0 0.3 1816 1304 0 R+ 2:17PM 0:00.00 grep httpd

набрав в браузере айпи или доменное имя сервера увидим надпись, которая не может не радовать:

It works!

Простейший WEB-сервер на FreeBSD: 2 комментария

    1. Воронов Глеб Автор записи

      Привет. Зависит от того, какая система для тебя предпочтительнее
      Навскидку FreeBSD немного производительнее и безопаснее. При любой возможности я использую её

Добавить комментарий