zmej.org.ua - Памятки системного администратора.  zmej.org.ua - Памятки системного администратора.

Главная » FreeBSD

Вход на сайт

  • Запросить новый пароль

Навигация

  • Cisco
    • Cisco access-list
    • Аутентификация на Cisco
    • Обновление Cisco IOS
    • Привязка MAC-адресов к портам на Cisco Catalyst 2960
    • Списки доступа (Access list) ACL Cisco
  • FreeBSD
    • Colorize - подсвечивание ключевых слов
    • Munin — мониторинг сервера на основе FreeBSD
    • Postfix + Postgrey. Небольшой пример того, как можно бороться со спамом.
    • Roudcube. Установка и настройка.
    • VPN между FreeBSD и Windows. Установка mpd4.
    • Блокируем TeamViewer
    • Выполнение mount из-под прав обычного пользователя
    • Добавление базы и пользователя в MySQL
    • Как узнать серийный номер винчестера в FreeBSD
    • Модули Apache22 (Apache22 modules)
    • Мониторинг винтчестеров (HDD/жестких дисков) с помощью SMART (smartmontools)
    • Мониторинг загрузки канала (MRTG)
    • Мониторинг загрузки сетевых интерфейсов в реальном времени
    • Мониторинг нагрузки процессора (SNMP MRTG CPU Monitoring)
    • Настройка DNS сервера named
    • Настройка сервера времени NTP
    • Настройка фаервола (firewall ipfw) на ОС FreeBSD
    • Обновление FreeBSD. Краткий мануал.
    • Обновление портов (CVSup)
    • Обновление портов. Portupgrade.
    • Организация VPN между 3-мя офисами
    • Повышаем безопасность FreeBSD
    • Проблема после обновление SpamAssassin
    • Работа с .htaccess и .htpasswd
    • Скрипты
      • Блокировка перебора SSH (по 22му порту)
      • Создание архива базы - mysqldump
    • Тестирование MySQL
    • Управление дуплексным режимом и скоростью подключения к порту.
    • Установка MySQL сервера
    • Установка связки Apache22+php5+mysql5
    • Шейпер на ipfw
  • Подсказки по редактированию

Установка связки Apache22+php5+mysql5

Zmej —чт, 05/01/2012 - 13:01

В интернете много различных руководств по созданию связки Apache22+php5+mysql5. Попробую и я внесни свою лепту. Но чуток усложним задачу: попробуем запустить виртуальный хост от имени другого пользователя, отличного от стандартного www, что позволит нам повысить безопастность сервера.

Обновляем порты, приводим систему в идеального состояние и приступаем. Для начала, устанавливаем MySQL сервер (описанно тут). Дальше, идем в директорию веб сервера и делаем небольшие изменения:
10:10 user@ns [/usr/ports/www/apache22]#vi Makefile
#WITH_MPM?=     prefork # or worker, event, itk
WITH_MPM?=      itk
Заменяем как я показал, после чего выполняем следующее:
10:12 user@ns [/usr/ports/www/apache22]#make config
 Options for apache-itk 2.2.14_5    
 
 [X] MYSQL                 Enable MySQL support for apr-dbd
 [X] AUTH_BASIC            Enable mod_auth_basic                 
 [X] AUTH_DIGEST           Enable mod_auth_digest                
 [X] AUTHN_FILE            Enable mod_authn_file      
 [X] AUTHN_DBM             Enable mod_authn_dbm               
 [X] AUTHN_ANON            Enable mod_authn_anon             
 [X] AUTHN_DEFAULT         Enable mod_authn_default           
 [X] AUTHN_ALIAS           Enable mod_authn_alias            
 [X] AUTHZ_HOST            Enable mod_authz_host                
 [X] AUTHZ_GROUPFILE       Enable mod_authz_groupfile          
 [X] AUTHZ_USER            Enable mod_authz_user             
 [X] AUTHZ_DBM             Enable mod_authz_dbm               
 [X] AUTHZ_OWNER           Enable mod_authz_owner            
 [X] AUTHZ_DEFAULT         Enable mod_authz_default              
 [X] CACHE                 Enable mod_cache                     
 [X] DISK_CACHE            Enable mod_disk_cache                
 [X] FILE_CACHE            Enable mod_file_cache                 
 [X] MEM_CACHE             Enable mod_mem_cache                 
 [X] DAV                   Enable mod_dav                       
 [X] DAV_FS                Enable mod_dav_fs                    
 [X] ACTIONS               Enable mod_actions                    
 [X] ALIAS                 Enable mod_alias                      
 [X] ASIS                  Enable mod_asis                      
 [X] AUTOINDEX             Enable mod_autoindex                 
 [X] CERN_META             Enable mod_cern_meta                  
 [X] CGI                   Enable mod_cgi                
 [X] CHARSET_LITE          Enable mod_charset_lite              
 [X] DEFLATE               Enable mod_deflate                   
 [X] DIR                   Enable mod_dir                      
 [X] DUMPIO                Enable mod_dumpio                     
 [X] ENV                   Enable mod_env                        
 [X] EXPIRES               Enable mod_expires                    
 [X] HEADERS               Enable mod_headers                    
 [X] IMAGEMAP              Enable mod_imagemap                   
 [X] INCLUDE               Enable mod_include                 
 [X] INFO                  Enable mod_info                       
 [X] LOG_CONFIG            Enable mod_log_config                 
 [X] LOGIO                 Enable mod_logio                     
 [X] MIME                  Enable mod_mime                    
 [X] MIME_MAGIC            Enable mod_mime_magic               
 [X] NEGOTIATION           Enable mod_negotiation                
 [X] REWRITE               Enable mod_rewrite                  
 [X] SETENVIF              Enable mod_setenvif                 
 [X] SPELING               Enable mod_speling                   
 [X] STATUS                Enable mod_status                    
 [X] UNIQUE_ID             Enable mod_unique_id              
 [X] USERDIR               Enable mod_userdir                  
 [X] USERTRACK             Enable mod_usertrack                  
 [X] VHOST_ALIAS           Enable mod_vhost_alias                
 [X] FILTER                Enable mod_filter                   
 [X] VERSION               Enable mod_version                    
 [X] PATCH_PROXY_CONNECT   Patch proxy_connect SSL support       
 [X] SSL                   Enable mod_ssl                        
Выбираем пункты под свои нужды. Жмем ОК, после чего выполняем инсталяцию.
10:14 user@ns [/usr/ports/www/apache22]#make install clean
После чего, в файл /etc/rc.conf добавляем apache22_enable="YES" После чего, пробуем запустить.
12:03 user@ns [/usr/ports/www/apache22]#/usr/local/etc/rc.d/apache22 start
Performing sanity check on apache22 configuration:
Syntax OK
Starting apache22.
12:03 user@ns [/usr/ports/www/apache22]#
Судя по всему, у меня завелось. Если у Вас что то другое, смотрите причины ошибки. Итак, mysql стоит, apache стоит, ставим php5.
12:03 user@ns [/usr/ports/www/apache22]#cd /usr/ports/lang/php5
12:05 user@ns [/usr/ports/lang/php5]#make config
                     Options for php5 5.2.12                        
 
 [X] CLI        Build CLI version                                 
 [X] APACHE     Build Apache module                               
 [X] SUHOSIN    Enable Suhosin protection system (not for jails)  
 [X] MULTIBYTE  Enable zend multibyte support                     
 [X] MAILHEAD   Enable mail header patch                          
12:08 user@ns [/usr/ports/lang/php5]#make install clean
Выбираете все под свои нужды и устанавливаете. В конце Вам необходимо будет добавить в DirectoryIndex значение index.php (индексный, первоначальный файл) и 2 строки, обработки php apache'ем.
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
И перегружаете веб сервер. Для проверки, можете залить в директорию тестовый файлик.
12:11 phenix@ns [/usr/ports/lang/php5]#cd /usr/local/www/apache22/data
12:12 phenix@ns [/usr/local/www/apache22/data]#cat test.php
<?
        phpinfo();
?>
12:13 phenix@ns [/usr/local/www/apache22/data]#
Ну и через броузер проверить, работает или нет. Страничка должна выдать все информацию из файла php.ini. Но это еще не все. Кроме самого PHP нам необходимо еще и некоторые модули, к примеру поддержка базы данных, либо графики. Для этого переходим в каталог /usr/ports/lang/php5-extensions/ и выбираем те модули, которые нам необходимы (через выполнение комманды make config а потом make install clean).
Для того, чтоб виртуальных хост отрабатывал из-под другого пользователя, в файл httpd-vhosts.conf, а именно в самом виртуальном хосте необходимо добавить следующее:
<IfModule itk.c>
    AssignUserID testuser testuser
    MaxClientsVHost 200
</IfModule>
Где директива AssignUserID говорит от имено кого будет запускаться виртуальных хост, MaxClientsVHost - количество обращений.
Вот собственно и все. Не расмотрел тут вариант настройки самого апача (чесно говоря - этого много, я всего лишь описал моменты с повышеной безопастностью, то, что сложно найти в инете), и не расмотрел вариант с настройкой php.ini, ну да это как раз тема для еще одной статьи.
  • FreeBSD
  • Войдите чтобы оставить комментарии

Новые пользователи

  • Zmej

Последние комментарии

Комментарии отсутствуют.

Сейчас на сайте

Пользователей онлайн: 0.

Создано на Drupal

Downloaded from top drupal themes | Hostgator coupon