Что такое apache 2. Установка web-сервера Apache
Установка веб-сервера на Linux:
- Если у вас Ubuntu, то вам подойдёт статья "Как установить веб-сервер Apache с PHP 7, MariaDB/MySQL и phpMyAdmin (LAMP) на Ubuntu 16.10 ".
- Если у вас Arch Linux, то вам подойдёт статья "Установка LAMP (Linux, Apache, MySQL/MariaDB, PHP7 и phpMyAdmin) в Arch Linux / BlackArch ".
Локальный сервер очень полезный инструмент. Он точно пригодиться веб-мастерам, программистам на PHP, тестерам на проникновение. Все программы, входящие в типичную установку веб-сервера, являются бесплатными, у всех у них открыт исходный код. Локальный веб-сервер потребляет минимум ресурсов и, на самом деле, его совсем нетрудно установить и настроить.
Эта инструкция расскажет о том, как установить локальный веб-сервер без использования готовых сборок. Этот способ имеет свои преимущества. Самыми важными из них являются: полный контроль на тем, что вы устанавливаете; возможность использовать самые последние версии программного обеспечения.
Если вы будете в точности следовать инструкции, то у вас обязательно всё заработает! Кроме тех, у кого Windows XP - если лу вас эта операционная система, то для вас сделана специальная инструкция .
Я покажу пример установки на Windows 10, но если у вас другая версия Windows, то пусть вас это не смущает - процедура везде идентичная. Я буду скачивать последние (самые свежие) на момент написания версии программ. Если к тому времени, когда вы читаете, выйдут новые версии, то скачивайте именно их.
Этапы установки:
Вам также может пригодиться:
1. Подготовка (скачивание программ, входящих в сервер, создание структуры сервера)
Нам нужны:
- Apache (непосредственно веб-сервер)
- PHP - среда для работы PHP программ (требуется практически всеми веб-сайтами)
- MySQL - система управления базами данных (требуется большинством веб-сайтов)
- phpMyAdmin - очень удобный инструмент для управления базами данных
Официальный сайт разработчиков Apache это httpd.apache.org . Можно скачать Apache с этого сайта. Но официальная версия собирается с использованием старого компилятора, по этой причине она не работает с новыми версиями PHP. Авторы PHP рекомендуют Apache с сайта apachelounge.com/download . Поэтому для этой инструкции скачиваем Apache именно с сайта apachelounge.com/download .
Если у вас 64-битная версия Windows, то вы можете выбрать как 64-битную, так и 32-битную версию компонентов. Главное правило - все компоненты должны быть одной битности. Если у вас 32-битная версия Windows, то все компоненты должны быть 32-битными. Это не относится к phpMyAdmin, который написан на языке PHP. Для PHP программ понятие битности неприменимо.
Бесплатная версия MySQL называется MySQL Community Server . Её можно скачать на странице . На этой же странице есть установщик в виде исполнимого файла, но я рекомендую скачать ZIP-архив. На странице скачивания нам предлагают зарегистрироваться или войти в существующую учётную запись - но это делать необязательно. Достаточно нажать на ссылку «No thanks, just start my download ». Обратите внимание на битность.
Ещё нам нужен файл C++ Redistributable Visual Studio 2017, т.е. Распространяемый компонент Visual C++ для Visual Studio 2017 (или любой другой более поздний), скачать его можно на официальном сайте Microsoft по ссылке (прямая ссылка на скачивание 64-битной версии; прямая ссылка на скачивание 32-битной версии). Этот файл нужен для веб-сервера. А для MySQL необходим Распространяемые пакеты Visual C++ для Visual Studio 2015. Его можно скачать по .
Итак, у меня скачались следующие файлы:
- httpd-2.4.29-Win64-VC15.zip
- php-7.2.0-Win32-VC15-x64.zip
- mysql-8.0.11-winx64.zip
- phpMyAdmin-4.7.6-all-languages.zip
- vc_redist.x64.exe
- vcredist_x64.exe
Установите файлы vc_redist.x64.exe и vcredist_x64.exe .
2. Создание структуры веб-сервера
Создадим структуру каталогов нашего сервера. Главная идея - разделить исполнимые файлы и файлы сайтов с базами данных. Это удобно для обслуживания сервера, в том числе для резервного копирования.
В корне диска C:\ создайте каталог Server . В этом каталоге создайте 2 подкаталога: bin (для исполнимых файлов) и data .
Перейдите в каталог data и там создайте подпапки DB (для баз данных) и htdocs (для сайтов).
Перейдите в каталог C:\Server\data\DB\ и создайте там пустую папку data .
3. Установка Apache 2.4
Содержимое скаченного архива (точнее говоря, только каталог Apache24 ), распакуйте в C:\Server\bin\ .
Перейдите в каталог c:\Server\bin\Apache24\conf\ и откройте файл httpd.conf любым текстовым редактором.
В нём нам нужно заменить ряд строк.
Define SRVROOT "c:/Apache24"
Define SRVROOT "c:/Server/bin/Apache24"
#ServerName www.example.com:80
ServerName localhost
DocumentRoot "${SRVROOT}/htdocs"
DocumentRoot "c:/Server/data/htdocs/"
DirectoryIndex index.html
DirectoryIndex index.php index.html index.htm
# AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # AllowOverride FileInfo AuthConfig Limit # AllowOverride None
# AllowOverride controls what directives may be placed in .htaccess files. # It can be "All", "None", or any combination of the keywords: # AllowOverride FileInfo AuthConfig Limit # AllowOverride All
#LoadModule rewrite_module modules/mod_rewrite.so
LoadModule rewrite_module modules/mod_rewrite.so
Сохраняем и закрываем файл. Всё, настройка Apache завершена! Описание каждой изменённой директивы вы найдёте на этой странице .
Откройте командную строку (это можно сделать нажав одновременно клавиши Win+X). Выберите там Windows PowerShell (администратор) и скопируйте туда:
C:\Server\bin\Apache24\bin\httpd.exe -k install
Если поступит запрос от файервола в отношение Apache, то нажмите Разрешить.
Теперь вводим в командную строку:
C:\Server\bin\Apache24\bin\httpd.exe -k start
И нажмите Enter.
В качестве имя пользователя вводим root. Поле пароля оставляем пустым. Если всё сделано правильно, то всё должно выглядеть так:
7. Использование сервера и бэкап данных
В каталоге c:\Server\data\htdocs\ создавайте папки и файлы, например:
c:\Server\data\htdocs\test\ajax.php - этот файл, соответственно, будет доступен по адресу http://localhost/test/ajax.php и т.д.
Для создания полного бэкапа всех сайтов и баз данных достаточно скопировать каталог C:\Server\data\ .
Перед обновлением модулей, делайте бэкап папки bin - в случае возникновения проблем, можно будет легко откатиться к предыдущим версиям.
При повторной установке сервера или при его обновлении, необходимо заново настраивать конфигурационные файлы. Если у вас есть копии этих файлов, то процесс можно значительно ускорить. Желательно забэкапить следующие файлы:
- c:\Server\bin\Apache24\conf\httpd.conf
- c:\Server\bin\mysql-8.0\my.ini
- c:\Server\bin\PHP\php.ini
- c:\Server\data\htdocs\phpMyAdmin\config.inc.php
В них и хранятся все настройки.
8. Дополнительная настройка PHP
PHP в настоящее время очень мощный, гибкий, удобный инструмент. На локальном компьютере с помощью него можно решать разнообразные задачи, совсем не обязательно связанные с генерацией Web-страниц. При решении неординарных задач можно упереться в ограничения, установленные в настройках. Эти настройки содержаться в файле php.ini (c:\Server\bin\PHP\php.ini) Рассмотрим некоторые из них:
Memory_limit = 128M
устанавливает максимальное количество памяти, которое может использовать скрипт
Post_max_size = 8M
устанавливает максимальное количество данных, которые будут приняты при отправке методом POST
;default_charset = "UTF-8"
устанавливает кодировку (по умолчанию, строка закомментирована)
Upload_max_filesize = 2M
максимальный размер загружаемого на сервер файла. Изначально установлен очень маленький размер - только два мегабайта. Например, при загрузке базы данных в phpMyAdmin, не получится загрузить файл больше 2 мегабайт до тех пор, пока не будет изменён этот пункт настройки.
Max_file_uploads = 20
максимальное количество файлов для загрузки за один раз
Max_execution_time = 30
максимальное время выполнения одного скрипта
Менять эти настройки совершенно необязательно, но полезно о них знать.
9. Дополнительная настройка phpMyAdmin
Мы уже настроили phpMyAdmin и большинству вполне достаточно базового функционала. Тем не менее, на стартовой странице phpMyAdmin есть надпись: «Дополнительные возможности phpMyAdmin не настроены в полной мере, некоторые функции были отключены».
Новыми возможностями являются:
- показ связей между (связанными) таблицами;
- добавление информации о таблицах (начиная с версии 2.3.0 вы можете описывать в специальной таблице ‘table_info’ какая колонка будет показана во всплывающей подсказке при движении курсором над связанным ключом);
- создание PDF-схемы (начиная с версии 2.3.0 вы можете в phpMyAdmin создавать PDF страницы, показывающие связи между вашими таблицами);
- отображать комментарии столбцов (начиная с версии 2.3.0 вы можете делать комментарий с описанием каждого столбца для каждой таблицы. И они будут видны в «предварительном просмотре для печати». Начиная с версии 2.5.0, комментарии используются на собственных страницах таблиц и в режиме просмотра, показываясь как всплывающие подсказки над колонками (таблицы свойств) или встроены в заголовок таблицы в режиме просмотра. Они также могут быть показаны в дампе таблицы);
- создавать закладки (начиная с версии 2.2.0, phpMyAdmin позволяет пользователям делать закладки на запросы. Это может быть полезно для часто используемых запросов);
- история SQL-запросов (начиная с версии 2.5.0 вы можете сохранять вашу историю всех SQL запросов, которые были сделаны через интерфейс phpMyAdmin);
- дизайнер (начиная с версии 2.10.0, доступен инструмент Дизайнер; он позволяет визуально управлять связями между таблицами);
- информация о недавно использованных таблицах;
- настройка интерфейса часто используемых таблиц;
- слежение (начиная с версии 3.3.x доступен механизм слежения. Он помогает вам проследить каждую SQL команду, которая была выполнена phpMyAdmin’ом. Поддерживается запись работы с данными и запись команд. После включения, вы сможете делать версии таблиц);
- пользовательские настройки (начиная с версии 3.4.x, phpMyAdmin позволяет пользователям задавать большинство настроек и сохранять их в базе данных);
- настраиваемые меню (начиная с версии 4.1.0 вы можете создавать группы пользователей, которым будут доступны только назначенные пункты меню. Пользователь может быть определён в группу и будет видеть только пункты меню, доступные для его группы);
- спрятать/показать пункты навигации (начиная с версии 4.1.0 вы можете спрятать/показать пункты в навигационном дереве).
- и другие
Сейчас мы настроим эти дополнительные возможности в полной мере. Перейдите по ссылке http://localhost/phpmyadmin/chk_rel.php и кликните "Создать базу данных". После этого все новые функции будут активированы.
Несколько скриншотов новых функций:
1) Дизайнер
2) Слежение
10. Установка почтовой заглушки
В каталоге C:\Server\bin\ создайте новый каталог с названием Sendmail. Теперь в этом каталоге создайте файл sendmail.php со следующим содержимым:
#!/usr/bin/env php
Откройте конфигурационный файл PHP, он размещён здесь C:\Server\bin\PHP\php.ini . И добавьте туда одну строчку:
Sendmail_path = "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php --dir C:\Server\bin\Sendmail\emails"
Сохраните файл и перезапустите сервер. Отлично, теперь все отправленные письма будут сохраняться в каталоге C:\Server\bin\Sendmail\emails\
Письма будут иметь расширение .eml и их можно открывать, например, программой Thunderbird . Либо обычным текстовым редактором.
11. Добавление PHP директории в PATH на Windows
Если этого не сделать, то могут быть проблемы с некоторыми модулями PHP, в том числе с php_curl.dll, php_intl.dll, php_ldap.dll, php_pdo_pgsql.dll и php_pgsql.dll. По крайней мере, при запуске сервера каждый раз в логах появляется следующее:
PHP Warning: PHP Startup: Unable to load dynamic library "C:\\Server\\bin\\PHP\\ext\\php_curl.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library "C:\\Server\\bin\\PHP\\ext\\php_intl.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library "C:\\Server\\bin\\PHP\\ext\\php_ldap.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library "C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0 PHP Warning: PHP Startup: Unable to load dynamic library "C:\\Server\\bin\\PHP\\ext\\php_pgsql.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd.\r\n in Unknown on line 0
Чтобы избежать этих предупреждений, нужно добавить в системные переменные среды путь до PHP.
Нажмите кнопку Пуск (или как там она называется на Windows 10?), начните набирать «Изменение системных переменных среды » и откройте соответствующее окно настроек.
Там нажмите «Переменные среды »:
В окне «Системные переменные » найдите и кликните на Path , потом нажмите «Изменить »:
Поднимите запись в самый вверх:
Закройте все окна с сохранением сделанных изменений.
Перезапустите сервер.
12. Зависание, замедление трафика и/или ошибка сервера Asynchronous AcceptEx failed
Если ваш сервер даже без нагрузки «зависает» - не показывает веб-страницы до перезапуска, а в логах сервера ошибки Asynchronous AcceptEx failed:
AH00455: Apache/2.4.9 (Win64) PHP/5.5.13 configured -- resuming normal operations AH00456: Apache Lounge VC11 Server built: Mar 16 2014 12:42:59 AH00094: Command line: "c:\\Server\\bin\\Apache24\\bin\\httpd.exe -d C:/Server/bin/Apache24" AH00418: Parent: Created child process 4952 AH00354: Child: Starting 64 worker threads. (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed. (OS 64)Указанное сетевое имя более недоступно. : AH00341: winnt_accept: Asynchronous AcceptEx failed.
То в конфигурационный файл Apache добавьте:
AcceptFilter http none AcceptFilter https none EnableSendfile off EnableMMAP off
13. Настройка cURL в веб-сервере Apache на Windows
Если вы не знаете, что такое cURL, значит это вам не нужно. Т.е. смело пропускайте этот шаг.
cURL - это консольная утилита, которая позволяет обмениваться данными с удалёнными серверами, используя очень большое количество протоколов. cURL может использовать кукиз и поддерживает аутентификацию. Если для веб-приложения требуется cURL, то это должно быть указано в зависимостях. Для многих популярных приложений cURL не требуется, например, для phpMyAdmin и WordPress нет необходимости настраивать cURL.
Если cURL настроена неправильно, то вы будете получать ошибки:
Fatal error: Call to undefined function curl_multi_init() in …
Ошибка curl: SSL certificate problem: unable to get local issuer certificate
Чтобы cURL работала в Apache на Windows вам нужно:
1) Обязательно добавить PHP директорию в PATH (системные переменные среды). Как это сделать сказано чуть выше:
2) В файле C:\Server\bin\PHP\php.ini должна быть раскомментирована строка extension=curl
Обычно это не требуется, но при желании вы можете сделать резервную копию бинарных (исполнимых) файлов сервера. Все эти файлы находятся в папке C:\Server\bin\ . Это Apache, MySQL и PHP - т.е. программы, которые отвечают за работу сервера, но которые мы в любой момент можем скачать с официальных сайтов и вновь настроить.
Если вы хотите сделать их резервную копию (например, перед обновлением сервера), то остановите службы:
C:\Server\bin\Apache24\bin\httpd.exe -k stop net stop mysql
И скопируйте в безопасное место папку C:\Server\bin\ .
Кстати, вы можете скопировать весь сервер целиком, т.е. папку C:\Server\ - в этом случае одновременно получиться резервная копия и исполняемых файлов, и данных (базы данных, сайты).
Когда копирование завершено, вновь запустите службы:
C:\Server\bin\Apache24\bin\httpd.exe -k start net start mysql
15. Обновление сервера
Все компоненты, составляющие веб-сервер, активно развиваются и регулярно выходят новые версии. При выходе новой версии вы можете обновить один какой-то компонент (например, PHP), или сразу несколько.
Удаление сервера
Если сервер вам больше не нужен , либо вы хотите установить его заново, остановите службы и удалите их из автозапуска последовательно выполнив в командной строке:
C:\Server\bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k uninstall net stop mysql c:\Server\bin\mysql-8.0\bin\mysqld --remove
Удалите файлы сервера, для этого удалите папку C:\Server\ . Внимание, это удалит все базы данных и ваши сайты.
Как защитить веб-сервер Apache от взлома в Windows
С PHP (с выбором версий), с MySQL и phpMyAdmin. Данный сайт размещён именно на нём: отзывчивая и квалифицированная техническая поддержка, установка WordPress и других веб-приложений в одни клик, в подарок при оплате за год, бесплатный перенос сайта. При заказе хостинга по + 1 месяц бесплатно (промокод b33e0e2f).
В данном разделе мы с вами будем разбираться с тем, как работает HTTP сервер Apache . Начнем мы, конечно, с установки Apache на Windows. Нужно отметить, что большинство хостингов в качестве веб-сервера используют Apache, поэтому любому веб-мастеру необходимо знать основы работы с этим сервером.
В этой записи мы с вами разберемся для чего вообще нужен веб-сервер, затем поговорим про некоторые особенности сервера Apache и установим его на компьютер под управлением Windows, а в завершении мы посмотрим на ошибки, которые могут возникнуть при установке Apache на Windows 7 и выше.
Что такое веб-сервер Apache и для чего он нужен?
Мы знаем, что взаимодействие в сети Интернет можно полностью описать или эталонной моделью. Для веб-разработчика наибольший интерес представляют протоколы и технологии, находящиеся на шестом и седьмом уровне эталонной модели. Из всех протоколов седьмого уровня нам более всех интересен , в основе которого лежит архитектура клиент-сервер.
Мы это сделали следующим образом: в корне диска С создали папку Server, внутри которой создали еще четыре папки: apache, tmp, www, log, php. Не все папки мы будем использовать в данной инструкции. Всё это отображено на рисунке ниже.
В папке www мы создали простой , который назвали Index.html со следующим содержимым:
Apache в действие
< ! DOCTYPE html > < html lang = "ru-RU" > < head > < meta charset = "UTF-8" > < title > Проверочнаястраница< / title > < link rel = "stylesheet" type = "text/css" href = "style.css" / > < / head > < body > < h1 > Apache вдействие< / h1 > < / body > < / html > |
В этом документе только один и если мы сможем открыть его по завершении установки веб-сервера Apache, то мы все сделали правильно. Для дальнейшей установки веб-сервера нам нужно .
Вот он – великий и ужасный. Сгубивший на своём веку множество начинающих веб-разработчиков, сложивших головы на настройке его конфигурационных файлов. 🙂 Но мы с вами люди, крепких нервов и стальных желудков — поэтому, поехали.
Начальная установка и настройка
Распакуйте архив дистрибутива в каталог C:\Apache2.
Откройте в текстовом редакторе файл «C:\Apache2\conf\httpd.conf», являющийся основным конфигурационным файлом сервера Apache.
Ну а теперь держитесь. Женщинам, старикам и детям просьба – дальше не читать. За психическое состояние людей, дочитавших статью до конца – авторы ответственности не несут. 🙂
Правка файла httpd.conf
- Для загрузки модуля mod_rewrite найдите и раскомментируйте (уберите в начале строки символ «#») данную строку:
LoadModule rewrite_module modules/mod_rewrite.so - Для загрузки PHP интерпретатора, в конец блока загрузки модулей необходимо добавить строку:
LoadModule php5_module «C:/php/php5apache2_2.dll» - Определите каталог содержащий конфигурационный файл PHP, добавив ниже следующую строку:
PHPIniDir «C:/php» - Найдите и раскомментируйте строку:
ServerName www.example.com:80
Отредактируйте ее следующим образом установив изначальное имя сервера:
ServerName localhost:80 - Найдите строку:
DocumentRoot «c:/Apache2/htdocs»
Назначьте корневую директорию управления сайтами (немного позже мы ее создадим):
DocumentRoot «C:/apache» - Найдите данный блок:
Options FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
И замените его на нижеследующий:
Options Includes Indexes FollowSymLinks
AllowOverride All
Allow from all
- Удалите или закомментируйте первоначальный блок управления директориями (он нам не понадобится), который без комментариев выглядит примерно так:
Options Indexes FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all
- Найдите блок:
DirectoryIndex index.html
Замените его на:
DirectoryIndex index.html index.htm index.shtml index.php
- Найдите строку:
ErrorLog «logs/error.log»
Замените на нижеследующую (в этом случае просматривать глобальный файл ошибок сервера будет удобнее):
ErrorLog «C:/apache/error.log» - Найдите строку:
CustomLog «logs/access.log» common
Замените на:
CustomLog «C:/apache/access.log» common - Для работы SSI (включения на стороне сервера) следующие строки, находящийся в блоке
, необходимо найти и раскомментировать:
AddType text/html .shtml
AddOutputFilter INCLUDES .shtml - Добавьте ниже, в тот же блок
, две строки:
AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps - И, наконец, найдите и раскомментируйте строки:
Include conf/extra/httpd-mpm.conf
Include conf/extra/httpd-autoindex.conf
Include conf/extra/httpd-vhosts.conf
Include conf/extra/httpd-manual.conf
Include conf/extra/httpd-default.conf
Сохраните изменения и закройте файл «httpd.conf»
Теперь откройте файл «C:\Apache2\conf\extra\httpd-vhosts.conf» и произведите в нем следующие изменения.
Существующие блоки примеров виртуальных хостов необходимо удалить, и вставить только нижеследующее:
NameVirtualHost *:80
DocumentRoot «C:/apache/localhost/www»
ServerName localhost
ErrorLog «C:/apache/localhost/error.log»
CustomLog «C:/apache/localhost/access.log» common
Сохраните изменения и закройте файл «httpd-vhosts.conf»
Настройка конфигурационныйх файлов завершена, теперь необходимо установить сервис Apache2.2.
Установка сервиса Apache2.2 в картинках
Запускаем командную строку и вводим в ней «C:\Apache2\bin\httpd.exe -k install»
Вот что мы должны увидеть при успешной установке сервиса Apache2.2.
Если все прошло успешно, движемся дальше — устанавливаем ручной запуск сервиса Apache2.2 для чего проходим путь: «Start» («Пуск») → «Control Panel» («Панель управления») → «Administrative Tools» («Администрирование») → «Services» («Службы»), в открывшемся окне управления служб выбираем строку «Apache2.2» и делаем на ней двойной щелчок, после чего во вкладке «General» («Общие») выбираем ручной запуск сервиса — «Startup type: Manual» («Тип запуска: вручную»). Это необходимо сделать для того, чтобы лишние службы не загружали систему. Учитывая, что домашний компьютер используется не только для веб-разработок, но и для многих других нужд, ручной запуск и остановка, непостоянно используемых сервисов, является наиболее приемлемым.
Создание структуры каталогов виртуальных хостов
В корне диска необходимо создать каталог «apache» — в нем будут лежать ваши виртуальные хосты (домены), глобальный файл журнала ошибок «error.log» (создается программой при первом запуске, автоматически), глобальный файл доступа «access.log» (создается автоматически). В каталоге «apache» создаем еще одну пустую папку — «localhost», в которой, в свою очередь, создаем папку «www», именно в последней и надо будет держать наше добро в виде локальных скриптов. Такая, казалось бы странная структура каталогов, продиктована схожей схемой построения каталогов в системах Unix, и призвана упростить в дальнейшем ее понимание и использование.
Пример создания виртуального хоста
При необходимости установки собственных виртуальных хостов сделайте следующее:
Откройте файл «httpd-vhosts.conf», и создайте в нём блок, примерно, следующего содержания:
# Папка, в которой будет корень вашего хоста.
DocumentRoot «C:/apache/test.ru/www»
# Домен по которому вы сможете обращаться к виртуальному хосту.
ServerName test.ru
# Алиас (добавочное имя) домена.
ServerAlias www.test.ru
# Файл, в который будут записываться ошибки.
ErrorLog «C:/apache/test.ru/error.log»
# Файл журнала доступа к хосту.
CustomLog «C:/apache/test.ru/access.log» common
Затем в каталоге «apache», создайте папку «test.ru» (прямо так, с точкой), в которой, в свою очередь, создайте папку «www».
Следующий шаг создания виртуального хоста – это изменение файла C:\WINDOWS\system32\drivers\etc\hosts операционной системы. Откройте данный файл и добавьте в него две строки:
127.0.0.1 test.ru
127.0.0.1 www.test.ru
Теперь запустите сервер Apache выполнив в командной строке «C:\Apache2\bin\httpd.exe -k start», откройте браузер, введите в адресной строке «test.ru» или «www.test.ru» и вы окажетесь в своем виртуальном хосте. Только будьте внимательны, теперь вы сможете попасть на оригинальный сайт с именем виртуального хоста («www.test.ru», если таковой существует), только закомментировав либо удалив строку: «127.0.0.1 www.test.ru», в вышеупомянутом файле «hosts».
Документация Apache, при запущенном сервере, доступна по адресу http://localhost/manual/
Остановить работу Apache можно выполнив в командной строке «C:\Apache2\bin\httpd.exe -k stop». При необходимости перезагрузить Apache, выполните в командной строке «C:\Apache2\bin\httpd.exe -k restart».
Установка и настройка веб-сервера Apache – завершена.
Создание пакетных файлов для запуска и остановки сервисов
Согласитесь, что вручную редактировать файл «hosts» при каждом запуске сервисов – это не удобно, поэтому для более удобного, одновременного запуска сервисов Apache, MySQL, и изменения файла «hosts» мы создадим два пакетных файла: на запуск и остановку, которые будут выполнять всю рутинную работу автоматически.
При использовании виртуальных хостов необходимо создать в директории C:\apache два файла: vhosts-off.txt – содержащий изначальное содержимое файла «hosts» и vhosts-on.txt – содержащий все виртуальные хосты. Обратите внимание, что при создании новых виртуальных хостов вам необходимо будет добавлять их в файл vhosts-on.txt, а не в C:\WINDOWS\system32\drivers\etc\hosts. Посмотрите на примеры ниже.
Файл vhosts-off.txt (может содержать одну единственную строку):
127.0.0.1 localhost
Пример файла vhosts-on.txt с виртуальными хостами www.test.ru и test.ru:
127.0.0.1 localhost
127.0.0.1 www.test.ru
127.0.0.1 test.ru
В той же директории C:\apache, создайте два пакетных файла: start-webserver.bat – для запуска сервисов и подмены файла «hosts», и stop-webserver.bat – для остановки сервисов и очистки файла «hosts».
Файл запуска start-webserver.bat:
@echo off echo. if not exist C:\apache\vhosts-on.txt goto no_vhosts echo Create virtual hosts: copy /v /y C:\apache\vhosts-on.txt C:\WINDOWS\system32\drivers\etc\hosts echo. :no_vhosts NET start Apache2.2 NET start MySQL
Файл остановки stop-webserver.bat:
@echo off echo. if not exist C:\apache\vhosts-off.txt goto no_vhosts echo Restore hosts file: copy /v /y C:\apache\vhosts-off.txt C:\WINDOWS\system32\drivers\etc\hosts echo. :no_vhosts NET stop Apache2.2 NET stop MySQL
В случае если вы не используете виртуальные хосты или хотите запустить сервисы без подмены файла «hosts», просто уберите из директории C:\apache файлы vhosts-on.txt и vhosts-off.txt.
Одновременно с сервисами удобно запускать программу Apache Monitor, отображающую в системном лотке состояние сервера Apache, для чего можно создать еще один пакетный файл «start-webserver-monitor.bat», содержание которого аналогично файлу «start-webserver.bat» с добавлением в самый конец следующей строки:
start «» «C:\Apache2\bin\ApacheMonitor.exe»
Теперь для запуска всего инструментария вам понадобится запустить файл «start-webserver-monitor.bat», или «start-webserver.bat», а для остановки «stop-webserver.bat». При желании вы можете переименовать эти файлы, переместить их в любое другое место из папки «C:\apache», либо создать на данные файлы ярлыки, например, на рабочий стол.
Оригинал статьи: http://php-myadmin.ru/learning/instrument-apache.html
Хостинг это место где "живет" ваш сайт. Это специальная услуга для размещения сайтов на серверных мощностях оператора и его доступности в сети интернет. Проще говоря, хостинг нужен что бы ваш сайт работал и им могли пользоваться люди со всего мира.
Хостинг бывает разный — виртуальный, облачный, VPS, выделенный сервер и даже бесплатный есть. Все это разные виды услуг, они различаются по стоимости и параметрам, но объединяет их одно — их задача обеспечивать корректную и круглосуточную бесперебойную работу ресурсов. Это основная задача любого хостера. Наверно всем понятно, что от недоступного посетителям сайта толку мало. И если вы думаете, что все хостинги одинаковы и достаточно просто выбрать подходящий по стоимости и параметрам — вы глубоко заблуждаетесь.
На сайте почти каждой компании вы найдете информацию о том, что именно этот хостинг самый лучший, только здесь используются самые передовые технологии, техподдержка вам ответит еще до того как вы напишете запрос или позвоните, и вообще, ваш сайт будет "бороздить" просторы интернета с невиданными доселе скоростью загрузки и аптаймом. Но на практике все выглядит несколько иначе, есть еще плохой и хороший хостинг.
Есть компании, которые только обещают, но на деле вы сталкнетесь с постоянными перебоями. Есть компании действительно предоставляющие качественный сервис, но довольно дорого. А есть и такие хостеры, у которых и качество на высоте и стоимость приемлемая.
Именно для того что бы каждый мог сделать правильный выбор и был создан наш рейтинг хостингов.
Как выбрать качественный хостинг по доступной цене?
Для начала вам необходимо определиться с параметрами, понять какая услуга и какой тариф вам подойдет. Облачный хостинг, VPS и выделенный сервер, подходят для больших ресурсов с высокой нагрузкой на сервер. Если у вас один или несколько небольших ресурсов — выбирайте виртуальный хостинг и смотрите на то, сколько сайтов вы сможете разместить в рамках тарифного плана и сколько предоставляется дискового пространства.
Дополнительные опции
Техническая поддержка, регулярное резервное копирование, удобная панель управления, подходящая вам страна размещения оборудования — все это также является важными критериями и игнорировать их не стоит. Как бы там ни было, но вам рано или поздно понадобится помощь специалистов хостинга или восстановление сайта из бекапа. И когда у вас все это есть под рукой — это несомненно является плюсом.
Стоимость
Этот параметр является не настолько важным в сравнении со стабильностью и качеством услуг, тем не менее игнорировать его нельзя, ведь не все могут платить высокую цену. Здесь
стоит понимать, цена далеко не всегда отражает реальное полложение дел
. Так, дорогой хостинг не значит хороший, а дешевый не говорит о низком качестве сервиса. Рекомендуем выбирать среднее по рынку.
Что такое рейтинг хостингов и для чего создан сайт?
Задача рейтинга не только выявить лучшего хостинг-провайдера и рассказать об этом другим пользователям. Но и показать людям те компании, с которыми связываться просто не стоит. Это безусловно позволяет пользователям делать правильный выбор.
В нашем рейтинге представлены сотни провайдеров из России, Украины, Беларуси и США. Благодаря собственным алгоритмам оценки услуг и тысячам отзывов простых людей, нам удается поддерживать объективность рейтинга и предоставлять достоверную информацию о качестве.
Что такое Apache? Это программное обеспечение с открытым исходным кодом, веб-сервер, который обеспечивает работу около 46% сайтов по всему миру. Официальное название – Apache HTTP Сервер , поддерживается и развивается компанией Apache Software Foundation.
Веб-сервер позволяет владельцам сайтов обслуживать их контент в интернете, о чём понятно с самого название “веб-сервер”. Apache один из самый старых и надёжный веб-серверов с первой версией выпуска более 20 лет назад в 1995 году.
Когда кто-либо хочет посетить сайт, он вводит доменное имя в адресную строку своего браузера. Затем веб-сервер доставляет запрашиваемые файлы как виртуальный посыльный.
В Hostinger в нашей инфраструктуре использует Apache в параллели с NGINX, другим популярным веб-сервером. Эта связка позволяет нам взять все преимущества от обоих. Это очень улучшает производительность путём компенсации слабых сторон одного сильными сторонами другого.
Обработка файлов, обработка баз данных, почты и веб-сервер использует различные виды серверного программного обеспечения. Каждое из этих приложений может иметь доступ к файлам, хранящимся на реальном сервере и использовать их в различных целях.
Работа веб-сервера – обслуживать сайт в интернете. Для этого он выполняет роль посредника между компьютером сервера и компьютером клиента. Он берёт контент с сервера на каждый запрос пользователя и доставляет его в сеть.
Самой большой задачей веб-сервера является одновременное обслуживание различных запросов от многих пользователей. Веб-сервер обрабатывает файлы написанные на разных языках программирования, таких как PHP, Python, Java и другие.
Он превращает их в статический файл HTML и отдаёт их на обслуживание в браузер пользователя. Когда вы слышите словосочетание веб-сервер, думайте о нём, как об инструменте для коммуникации между сервером и клиентом.
Как работает веб-сервер Apache?
Хоть Apache и называется веб-сервер, но в реальном положении вещей он является не сервером, а программой, которая запускается на сервере. Его задача установить соединение между сервером и браузером посетителей (Firefox, Google Chrome, Safari и др.) при доставке файлов туда и обратно между ними (клиент-серверная структура). Apache – это кроссплатформенное программное обеспечение, что значит оно хорошо работает как на Unix, так и на Windows серверах.
Когда посетитель хочет загрузить страницу вашего сайта, например, домашнюю страницу или страницу “О нас”, его браузер отправляет запрос на ваш сервер и Apache возвращает ответ со всеми запрошенными файлами (текст, изображение и так далее). Сервер и клиент взаимодействуют по протоколу HTTP и Apache ответственен за гладкое и безопасное соединение между двумя машинами.
Apache хорошо и удобно настраиваемый поскольку имеет модульную структуру. Модули позволяют администраторам сервера включать или выключать дополнительную функциональность. У Apache есть модули безопасности, кэширования, редактирования URL, аутентификации по средством пароля и другие. Вы можете установить свою собственную конфигурацию через файл .htaccess , который является файлом настроек для Apache и поддерживается всеми тарифными планами Hostinger .
Apache и другие веб-сервера
Кроме Apache существует ещё довольно много веб-серверов. Каждое приложение веб-сервера создавалось для различных целей. Не смотря на то, что Apache является самый широко используемым, для него есть несколько альтернатив и конкурентов.