Запись от AZM на субдомене raspberrypi |
Все записи на субдомене: Raspberry Pi как использовать, проекты на и для Raspberry Pi |
Мой apache2.conf для apache2 под Raspbian на Raspberry Pi |
Кому то может показаться не правильно делать так, но я считаю что конфигурация одной программы/сервиса должна быть сложена в единый файл, а не разбросана по сотням файлов в десятках каталогов. Так удобнее делать резервную копию файла конфигурации и восстанавливать конфигурацию, а открыв единый файл точно знаешь, что всё здесь и ничего не забыто. УЧТИТЕ - Я НЕ ВЕЛИКИЙ LINUX АДМИН, Я ВООБЩЕ НЕ LINUX/UNIX АДМИН! Делаю это для себя под реальные задачи на реальной железке, так что не обесссутьте. Уведомляю: сайты у меня лежат по пути: /websites соответственно дефаултный сайт (который не виртуал хост) лежит по пути: /websites/default/ его веб страницы соответственно: /websites/default/www/ CGI скрипты соответственно: /websites/default/cgi-bin/ Апач работает под юзером ftper из группы www-data, через FTP я захожу под тем же самым юзером, по этому у меня нет проблем с записью/перезаписью файлов которые создали скрипты или в которые скрипты должны писать данные, так как это всё файлы одного пользователя. Для phpMyAdmin я создал в каталоге /websites/default/www/ символьную ссылку: phpmyadmin ссылающуюся на: /usr/share/phpmyadmin На всякий случай напомню - конфиг апача на Raspbian лежит в файле: /etc/apache2/apache2.conf По умолчанию концепт конфига созданного после установки апача вот такой: /etc/apache2/apache2.conf - содержит в себе основу, которая с помощью директив "Include" подсасывает разные куски конфигурации из файлов, которые лежат в каталогах расположенных в /etc/apache2/ Соответственно, что бы заменить всю многофайловую и многокаталоговую вакханалию установленную по умолчанию на один единственный файл конфигурации, достаточно установленный с апачем конфиг переименовать, скажем в "apache2.conf_" а содержимое моей версии конфига положить вместо него в файл "apache2.conf", перезагрузить апач и всё должно взяться и заработать. Не забываем прежде чем рестартовать апач создать каталоги: /websites/default/www/ /websites/default/cgi-bin/ и сделать их каталогами пользователя ftper А теперь собственно мой конфиг, который "всё нужное одним файлом и ничего лишнего": ### --- ST ----------------------------- GLOBAL CONFIG --------------------------------------- ServerRoot "/etc/apache2" LockFile /var/lock/apache2/accept.lock PidFile /var/run/apache2.pid User ftper Group www-data ErrorLog /dev/null LogLevel warn Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 5 ## Число потоков апача которые стартуют и обрабатывают запросы. Так как у нас не веб сервер, а бот-помошник, то 3 потока достаточно StartServers 3 MinSpareServers 3 MaxSpareServers 3 MaxClients 3 ## Число запросов которые обработает поток прежде чем его апач прибьёт и запустит снова (что бы очистить от очистков и отмыть от помоев) MaxRequestsPerChild 5000 HostnameLookups Off UseCanonicalName Off ServerSignature Off Listen 80 ## Для виртуал хостов, если будут виртуал хосты вида "mmmm.192.168.0.1", то раскомментируем # NameVirtualHost *:80 ### --- EN ----------------------------- GLOBAL CONFIG --------------------------------------- ### --- ST ----------------------------- LOAD MOD --------------------------------------- ## Служит для создания псевдонимов и переадресаций LoadModule alias_module /usr/lib/apache2/modules/mod_alias.so ## Различные варианты аутентификации (для аутентификации через стандартное окно браузера "логин/пароль" если нет логина/пароля то ошибка 401) # LoadModule auth_basic_module /usr/lib/apache2/modules/mod_auth_basic.so # LoadModule authn_file_module /usr/lib/apache2/modules/mod_authn_file.so # LoadModule authz_default_module /usr/lib/apache2/modules/mod_authz_default.so # LoadModule authz_groupfile_module /usr/lib/apache2/modules/mod_authz_groupfile.so LoadModule authz_host_module /usr/lib/apache2/modules/mod_authz_host.so # LoadModule authz_user_module /usr/lib/apache2/modules/mod_authz_user.so ## Генерирует индексные страницы со списком файлов запрашиваемого каталога # LoadModule autoindex_module /usr/lib/apache2/modules/mod_autoindex.so ## CGI скрипты исполняет LoadModule cgi_module /usr/lib/apache2/modules/mod_cgi.so ## Сжимает страницы перед отправкой клиенту # LoadModule deflate_module /usr/lib/apache2/modules/mod_deflate.so ## Позволяет апачу получать списки файлов в каталогах LoadModule dir_module /usr/lib/apache2/modules/mod_dir.so ## Управление переменными окружения, которые могут быть использованы в CGI-скриптах. LoadModule env_module /usr/lib/apache2/modules/mod_env.so ## Позволяет определять типы файлов по их именам и для привязки обработчиков этих файлов LoadModule mime_module /usr/lib/apache2/modules/mod_mime.so ## Позволяет серверу выбирать один из вариантов страницы (например язык) в зависимости от запроса пользователя # LoadModule negotiation_module /usr/lib/apache2/modules/mod_negotiation.so ## Собственно PHP LoadModule php5_module /usr/lib/apache2/modules/libphp5.so ## утанавливает тайм-аут (предел времени с момента последнего запроса к серверу по текущему соединению) и минимум скорости передачи данных для приёма запросов LoadModule reqtimeout_module /usr/lib/apache2/modules/mod_reqtimeout.so ## дает возможность выполнять операции над переменными среды LoadModule setenvif_module /usr/lib/apache2/modules/mod_setenvif.so ## предоставляет информацию о работе сервера apache # LoadModule status_module /usr/lib/apache2/modules/mod_status.so ### --- EN ----------------------------- LOAD MOD --------------------------------------- ### --- ST ----------------------------- CONFIG MODULE --------------------------------------- <IfModule mod_dir.c> DirectoryIndex index.html index.htm index.php </IfModule> <IfModule mod_mime.c> TypesConfig /etc/mime.types AddType application/x-compress .Z AddType application/x-gzip .gz .tgz AddType application/x-bzip2 .bz2 AddHandler type-map var AddType text/html .shtml AddOutputFilter INCLUDES .shtml </IfModule> <IfModule reqtimeout_module> RequestReadTimeout header=20-40,minrate=500 RequestReadTimeout body=10,minrate=500 </IfModule> <IfModule mod_setenvif.c> BrowserMatch "Mozilla/2" nokeepalive BrowserMatch "MSIE 4\.0b2;" nokeepalive downgrade-1.0 force-response-1.0 BrowserMatch "RealPlayer 4\.0" force-response-1.0 BrowserMatch "Java/1\.0" force-response-1.0 BrowserMatch "JDK/1\.0" force-response-1.0 BrowserMatch "Microsoft Data Access Internet Publishing Provider" redirect-carefully BrowserMatch "MS FrontPage" redirect-carefully BrowserMatch "^WebDrive" redirect-carefully BrowserMatch "^WebDAVFS/1.[012]" redirect-carefully BrowserMatch "^gnome-vfs/1.0" redirect-carefully BrowserMatch "^gvfs/1" redirect-carefully BrowserMatch "^XML Spy" redirect-carefully BrowserMatch "^Dreamweaver-WebDAV-SCM1" redirect-carefully BrowserMatch " Konqueror/4" redirect-carefully </IfModule> <IfModule mod_php5.c> AddType application/x-httpd-php .php </IfModule> ### --- EN ----------------------------- CONFIG MODULE --------------------------------------- ### === SITE ======================================================================== ### --- ST ----- DEFAULT SITE ------------------------------------------------------- DocumentRoot "/websites/default/www" <Directory /> AllowOverride None Options Indexes FollowSymLinks MultiViews Includes Order allow,deny Deny from all </Directory> <Directory "/websites/default/www"> Options Indexes FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> <IfModule alias_module> ScriptAlias /cgi-bin/ "/websites/default/www/cgi-bin/" </IfModule> # phpMyAdmin default Apache configuration <Directory /websites/default/www/phpmyadmin> Options FollowSymLinks DirectoryIndex index.php <IfModule mod_php5.c> AddType application/x-httpd-php .php php_flag magic_quotes_gpc Off php_flag track_vars On php_flag register_globals Off php_admin_flag allow_url_fopen Off php_value include_path . php_admin_value upload_tmp_dir /var/lib/phpmyadmin/tmp php_admin_value open_basedir /usr/share/phpmyadmin/:/etc/phpmya$ </IfModule> </Directory> ### --- EN ----- DEFAULT SITE ------------------------------------------------------- ### END OF FILEНа всякий случай, небольшой PHP скрипт, который будет выводить информацию о текущей установленной версии PHP, для проверки: <?php phpinfo (); ?>Положите его в файл: /websites/default/www/index.php *** Полезные ссылки: * Стандартные подключаемые модули * PHP.SU - Apache и другие веб-серверы - Ответ на вопрос "Помогите пожалуйста- хостер настоятельно посоветовал отключить ненужные модули php и apache" * Модули веб сервера Apache 2 |
Добавлено: 3524 дн 15 час 24 мин 46 сек назад | Внесений правок: 1 | Последняя правка: 3524 дн 15 час 4 мин 50 сек назад |