Категорії
FreeBSD WWW

Apache+PHP+Perl+MySQL

1) Ставим mysql.

#cd /usr/ports/database/mysql51-server && make install clean

После установки базы производим её инициализацию:

#mysql_install_db
#chown -R mysql:mysql /var/db/mysql

Добавляем в /etc/rc.conf строку для запуска и собственно запускаем:

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

2) Ставим Apache

#cd /usr/ports/www/apache22 && make install clean

Обязательно выбираем следующие опции, остальные – на усмотрение (кстати, perl установится автоматом, как зависимый пакет):

WITH_MYSQL=true
WITH_CGI=true
WITH_DBD=true
WITH_SSL=true

Сразу после установки сменим владельца для рабочей папки Web-сервера:

#chown -R www:www /usr/local/www

Теперь будем править конфиг апача (/usr/local/etc/apache22/httpd.conf). Изменить достаточно одну переменную, остальные можно оставить по умолчанию:

ServerName srv-test.domain.tld:80

Для возможности выполнения cgi-скриптов, нужно добавить эту возможность в конфиг (по дефолту она отключена). Приведём описание директивы для этого:

<Directory "/usr/local/www/apache22/cgi-bin">
AllowOverride None
Options ExecCGI
Order allow,deny
Allow from all
</Directory>

Теперь перейдём в каталог /usr/local/www/apache22/cgi-bin и сделаем всем файлам chmod +x для того, что бы их можно было выполнять. Да и вообще, для скриптов в этой папке права на файлы должны быть 755.

#echo 'apache22_enable="YES"' >> /etc/rc.conf
#/usr/local/etc/rc.d/apache start

3) Ставим PHP

#cd /usr/ports/lang/php5 && make install clean

Выбираем обязательно опции:

WITH_CGI=true
WITH_APACHE=true
WITH_FASTCGI=true

После установки добавляем строчку в /usr/local/etc/apache22/httpd.conf (по дефолту она добавляется, но лучше проверить 🙂 ):

LoadModule php5_module        libexec/apache22/libphp5.so

а так же добавляем такое

<IfModule mod_php5.c>
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
</IfModule>

и наконец, меняем все DirectoryIndex index.html на такие DirectoryIndex index.php index.html, то есть добавляем index.php, что бы php проверка запуска php скриптов осуществлялась раньше, чемhtml

После этого перечитываем конфиг апача:

#/usr/local/etc/rc.d/apache22 reload

Иногда, нужно в директиву <IfModule mime_module> добавить то же самое, что мы добавляли в<IfModule mod_php5.c>, а именно

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

После установки, рекоменду внести такие изменения в php.ini (это повысит безопасность вашего Web-сервера):

disable_functions = phpinfo, system, mail, exec
max_execution_time = 30
max_input_time = 60
memory_limit = 8M
post_max_size = 8M
upload_max_filesize = 2M
display_errors = Off
safe_mode = On
sql.safe_mode = On
safe_mode_exec_dir = /path/to/secure/dir
expose_php = Off
log_errors = On
allow_url_fopen = Off

Залишити відповідь

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *

Домашняя страничка Andy
Записки молодого админа
Самостоятельная подготовка к Cisco CCNA
Самостоятельная подготовка к Cisco CCNP
Powered by Muff