Выбор читателей
Популярные статьи
Эта статья – пошаговая инструкция по созданию локального web-сервера. В ней описана установка web-сервера Apache 2.4 на платформе ОС Windows. Тестирование установки выполнялось на Windows XP SP3.
Состав web-сервера:
Эта рабочая среда подойдет:
Дистрибутивы Apache 2.4 и PHP 5.4 скомпилированы в VC9 (Visual Studio 2008).
Версия Apache 2.4 VC9 работает, практически, со всеми актуальными версиями Windows (7/8/Vista/XP SP3).
Для работы приложений VC9, прежде всего, необходимо обновить библиотеки Visual C++.
Скачиваем дистрибутив обновлений vcredist_x86.exe с сайта Microsoft, запускаем файл и выполняем обновление.
На сайте apache.org нет версии Apache 2.4 для Windows. Поэтому дистрибутив возьмем на apachelounge.com. В момент написания статьи последний релиз – Apache 2.4.10.
В разделе Additional + VC9 можно выбрать два варианта дистрибутива – с поддержкой и без поддержки ssl. Мы останавливаемся на втором варианте и скачиваем архив httpd-2.4.10-win32-VC9.zip .
В дистрибутиве Apache нет файла инсталляции. Поэтому установка будет выполняться вручную.
Создаем папку и распаковываем архив httpd-2.4.10-win32-VC9.zip.
В файле конфигурации httpd.conf по умолчанию установлены маршруты C:\Apache24. Поэтому, правок в файле конфигурации будет гораздо меньше, если распаковать архив в эту папку.
Мы распакуем дистрибутив в папку C:\TestServer .
Вносим правки в файл конфигурации C:\TestServer \Apache24\conf\httpd.conf. При написании путей вместо символа «\» (обратная косая черта) следует использовать символ «/» (прямая косая черта). Так прописываются пути в операционных системах Linux и Unix. А ведь первоначально Apache разрабатывался именно для этих операционных систем.
Выполняем групповую замену текста C:/Apache24 на C:/TestServer /Apache24.
Устанавливаем значение параметра ServerName. ServerName localhost:80
Устанавливаем значение параметра ServerAdmin (e-mail администратора). ServerAdmin
Устанавливаем значение параметра DocumentRoot (расположение документов сайта). DocumentRoot C:/TestServer /Apache24/htdocs
Возможно, вы захотите хранить документы сайта отдельно от сервера. Например, в папке C:\MySites. Тогда этот параметр можно изменить. DocumentRoot C:/MySites
Исполняемые файлы Apache находятся в папке C:\TestServer \Apache24\bin. Добавляем это значение в переменную среды PATH Windows. PATH = C:\TestServer \Apache24\bin;
Устанавливаем Apache как службу. httpd.exe -k install
Если включен брандмауэр Windows, то при установке службы появится сообщение о блокировке программы от внешних подключений. Для работы службы необходимо дать разрешение на разблокирование.
Запускаем сервер Apache. httpd.exe -k start
Проверяем работоспособность сервера. В командной строке браузера набираем адрес: http://localhost. Если установка Apache прошла успешно – на экране отобразится текст It works!. В противном случае мы увидим пустой экран.
В случае если сервер не запустился, следует проверить, не занят ли порт 80, который использует Apache по умолчанию.
Делается это с помощью команды netstat –anb
Чаще всего этот порт используют Skype или Firefox. В этом случае следует либо освободить порт, либо перевести Apache на порт 8080.
Для этого в файле httpd.conf изменяем значений параметров ServerName и Listen. ServerName localhost:8080 Listen 8080
После этого перезапускаем службу командой httpd.exe -k restart
и опять пытаемся зайти по адресу http://localhost
Для удобства работы с сервером Apache можно установить в меню автозагрузки Windows ярлык, указывающий на C:\TestServer \Apache24\bin\ ApacheMonitor.exe
Заходим на сайт разработчика http://windows.php.net/download/. Находим дистрибутив PHP 5.4 в секции VC9 x86 Thread Safe и загружаем архив php-5.4.34-Win32-VC9-x86.zip.
Создаем папку на локальном компьютере, пусть это будет C:\TestServer \PHP54, и распаковываем архив.
Возвращаемся на сайт с дистрибутивом Apache. В разделе Additional + VC9 находим архив php5apache2_4.dll-php-5.4-win32.zip с PHP-модулями Apache и скачиваем его.
В архиве находим папку с самой последней версией модуля php5apache2_4.dll и помещаем его в папку C:\TestServer \PHP54.
В файл конфигурации httpd.conf добавляем строки:
LoadModule php5_module «C:/TestServer /PHP54/php5apache2_4.dll» AddHandler application/x-httpd-php .php # configure the path to php.ini PHPIniDir «C:/TestServer /PHP54/php«
В папке C:\TestServer \Apache54\htdocs создаем файл test.php. echo «Hello Apache!»; ?>
Перезапускаем Apache.
В адресной строке браузера набираем http://localhost/test.php. Если на экране появится текст Hello Apache!, то установка PHP завершилась успешно.
Для работы с БД MySQL нам необходимо настроить php.ini – файл конфигурации PHP.
В папке C:\TestServer \PHP54 находятся два шаблона: php.ini-development и php.ini-production.
Переименовываем шаблон php.ini-production в php.ini.
Библиотеки для работы с БД MySQL находятся в папке C:\TestServer \PHP54\ext. Этот путь должен быть прописан в директиве extension_dir файла конфигурации php.ini.
Находим этот параметр, удаляем символ комментария в начале строки (это точка с запятой) и прописываем путь. extension_dir = «C:/TestServer /PHP54/ext«
Для работы с БД MySQL в PHP существуют две библиотеки: php_mysqli.dll – более новая и именно ее рекомендуется использовать в работе; php_mysql.dll – старая, но ее используют на большинстве сайтов.
В файле php.ini лучше прописать обе библиотеки. extension=php_mysql.dll extension=php_mysqli.dll
После завершения правок обязательно перезапускаем сервер Apache.
Заходим на страницу http://www.mysql.ru/download/. Выбираем версию для Win32 или Win64. Мы будем загружать установочный пакет mysql-5.5.23-win32.msi.
Запускаем файл mysql-5.5.23-win32.msi.
Соглашаемся на лицензионные условия, выбираем тип установку Typical.
Переходим к настройке MySQL сервера.
Выбираем Detailed Configuration – детализированную настройку конфигурации.
Выбираем тип сервера с минимальными требованиями к памяти – Developer Machine.
Теперь нужно решить, с какими базами данных (InnoDB, MyISAM) будет работать наш сервер.
Multifunctional Database – поддерживаются InnoDB и MyISAM. Transactional Database Only - поддерживается InnoDB. Non-Transactional database Only - поддерживается myISAM.
При выборе поддержки InnoDB, следующий шаг – выбор места хранения таблиц InnoDB.
Максимальное число одновременных подключений лучше выбрать Manual Setting (ручная установка) и согласиться со значением по умолчанию (15).
На этом шаге параметром Enable TCP/IP Networking включается поддержка TCP-соединений, выбирается порт, по которому будут осуществляться эти соединения. Также устанавливается параметр Enable Strict Mode – режим строгого соответствия стандарту MySQL.
Теперь необходимо выбрать кодировку по умолчанию. Лучший вариант - кодировка UTF-8. Поэтому выбираем Best Support For Multilingualism.
Для того чтобы MySQL запускался как служба Windows - устанавливаем Install as Windows Service. Если необходим автозапуск этой службы - устанавливаем Launch the MySQL Server automatically.
Теперь устанавливаем пароль администратора и выключаем опцию Modify Security Settings.
После нажатия кнопок Next и Execute установку MySQL можно считать законченной.
Для проверки работоспособности MySQL нажимаем кнопку Пуск Windows, находим утилиту работы с MySQL (MySql Server 5.5 MySQL Server Command Line) и запускаем ее.
После ввода пароля администратора мы попадаем в командную строку MySQL.
Вводим команду show databases;
Если мы увидим список баз данных – это будет означать, что сервер работает правильно.
Выходим из режима командной строки: exit;
На этом установка сервера завершена. Удачной работы!
WindowsTune.ru
– Октябрь 10, 2015Рубрики: Разное
Если вы сделали «чистую» установку Windows 10 у вас вовсе может отсутствовать Служба Веб-Приложений (анг. Word Wide Web Publishing Servic). В таком случае, после установки WAMP / XAMPP, веб-сервер должен работать нормально без всяких неполадок.
Если этого не произойдет, попробуйте установить Visual C++ Redistributable, после чего произведите переустановку WAMP / XAMPP.
Как только стало доступно официальное обновление с Windows 7 до Windows 10, я не преминул воспользоваться данной возможностью. Обновление прошло на ура, все было отлично, но когда я попробовал запустить свой XAMPP уже под новой ОС, меня ждало разочарование: веб-сервер Apache не запускался. Замечу, что проблемы с XAMPP / WAMP стали уже неприятной традицией при каждом обновлении Windows. Я нашел два пути решения данной проблемы.
Как мне удалось разузнать, во всем был виновным порт 80, занятый «Службой Веб-приложений». Остановка данной службы, и перезапуск XAMPP решило проблему. Ниже я привожу, как найти данную службу и остановить ее работу.
После этого перезапускаем XAMPP / WAMP и у вас должен заработать Apache.
Читайте также: Горячие Клавиши Windows 10 – Справочник Главных Сочетаний
После «чистой» установки Windows 10, как уже писалось выше, у вас и вовсе может отсутствовать «Служба Веб-приложений». Если при таком раскладе, у вас все равно не работает WAMP / XAMPP, опробуйте следующее решение. Необходимо поменять порт, который будет обслуживать WAMP. Вот как это сделать.
Все должно заработать. Однако, теперь вам придется постоянно использовать данный номер порта, при доступе к серверу. Например, если ранее вы просто писали http://localhost/ то теперь вам необходимо будет дописывать http://localhost:8090/
Если вы узнали другое решение данной проблемы, пишите в комментариях о своем опыте.
itdistrict.ru
В сети достаточно много статей, где авторы приводят подробные инструкции со скриншотами, благодаря которым ни один пользователь смог выполнить установку сервера Apache для PHP и СУБД MySql. Но большинство из них оставляют за юзером множество вопросов, на которые он долго не может отыскать ответа. Рассмотрим, что такое Apache, MySql, PHP, для чего они нужны и как выполнить инсталляцию этих продуктов.
Apache свободный http-сервер, названный так в честь североамериканского племени индейцев апачей. Он широко используется на всех платформах, включая Windows, и фактически стал стандартом, в разработке веб-приложений и сервисов. Помимо него нам понадобится установка СУБД MySql, которая также является стандартом в своей сфере, и один из распространённых и универсальных скриптовых языков – PHP.
Апач (как его нарекли пользователи) отличается от других серверов тем, что на нем гарантированно будут работать все приложения и сервисы, не требуя при этом от пользователя выполнения дополнительной настройки. По сравнению с аналогами, Апач не отличается высоким быстродействием и низкими показателями потребления ресурсов компьютера, зато на его основе гарантированно будет функционировать любое приложение. Еще сюда можно добавить простоту настройки, работу фактически на всех современных платформах и отличную документацию.
Сейчас и рассмотрим, как осуществляется установка Apache на компьютер под управлением Windows 7 (в более поздних редакциях процесс практически идентичен), дабы сервер был инсталлированным на реальном хостинге.
На самом деле разницы между версиями продукта для разработчика практически никакой нет, разве старые Апачи не поддерживаются последними версиями скриптового языка PHP.
Разработчики продукта рекомендуют останавливаться на первом варианте, а посему, рассмотрим его немного ниже. Когда выполняется установка Апача, обратите внимание на путь хранения его файлов. Лучше всего выполнять инсталляцию в директорию «public», расположенную в папке «users» на системном разделе вашего винчестера.
После закрытия мастера установки убеждаемся, запущен ли Apache. Для этого опускаемся в трей и проверяем в нем наличие показанной ниже иконки.
Если же он не работает, запускаем командную строку. Делается это посредством ввода «cmd» в текстовую форму командного интерпретатора (Win+R).
В командной строке пишем «net start Apache2.2» для запуска сервера.
Такая запись справедлива только для версии продукта 2.2, в иных версиях числа будут соответствующими.
Останавливается сервер посредством набора команды с такими параметрами: «net stop Apache2.2».
Рассмотрим еще несколько методов запуска, завершения работы и перезагрузки Apache. При регулярной работе использование командной строки для управления работой сервера неэффективно – оно отнимет много времени. Выходом из ситуации будет использование контекстного меню иконки в трее: кликаем по ней правой клавишей мыши и выбираем, какое действие необходимо совершить.
То же самое выполняется посредством управления одноименной службой через соответствующую утилиту, открывающую доступ к службам Windows, или оснастку «Службы». Запускается она через поисковую строку либо «Администрирование» в «Панели управления».
При выборе первого метода установки сервера можете задать метод его запуска. При регулярном использовании и наличии свободных ресурсов на ПК используйте автозапуск Apache. В ином случае выбирайте его ручной запуск через контекстное меню службы.
После ручного или автоматического запуска сервера открываем удобный браузер и переходим по адресу: http://localhost. Появится пустая страница с таким же адресом.
Дабы приступить к работе делаем следующее.
Посмотрите ещё: Каким образом почистить компьютер от мусора Windows 7
Выполнение такого действия разрешит использовать документ «htaccess». Он представляет собой расширенный конфигурационный файл Apache.
Такое действие активирует модуль, отвечающий за создание и функционирование ЧПУ-ссылок.
Внимание! Загружать придется не исполняемый файл формата msi или exe, а biz-архив.
«LoadModule php5_module «C:\Users\Public\php\php7Apache2_2.dll»
AddType application/x-httpd-php .php»
Цифры в первой строке и адрес будут изменяться в зависимости от версий используемых продуктов и путей к каталогам и PHP.
При появлении информационного диалогового окна, сигнализирующего об ошибке при выполнении операции перезагружаем Windows.
Все параметры конфигурации PHP, когда выполнилась его установка, хранятся в файле «php.ini». Вместо него есть документы, имя которых начинается с «php.ini».
На этом установка и настройка PHP завершена. Осталось проверить работоспособность сервера. Идем в «htdocs» и создаем в папке файл с любым именем (лучше латиницей) и расширением php (например, file.php). Открываем его посредством текстового редактора и вводим следующий фрагмент кода:
Теперь открываем или разворачиваем окно браузера и вводим в адресную строку путь к созданному файлу. В нашем случае это: http://localhost/mysite/file.php
Посмотрите ещё: Что делать, если долго загружается компьютер Windows 7
Если все прошло удачно и без ошибок, увидите подобное изображение.
Обратите внимание на строку «Loaded configuration file». Там должен быть указан путь к файлу конфигурации «php.ini».
На этом установка Apache с PHP на компьютер с Windows завершена. Если вам потребуется инсталлировать какую-либо CMS, выполняется установка СУБД.
Установка сервера со скриптовым языком и MySql завершена. Осталось лишь связать два последних компонента, дабы они смогли взаимодействовать.
Для этого открываем уже известный файл конфигурации «php.ini» и удаляем символ «;» в строчках с такими данными:
extension=php_mysql.dll
extension=php_mysqli.dll.
Находим текст «; extension_dir = «ext»» и заменяем его на следующий «extension_dir = «C:\Users\Public\php\ext»», где после знака «равно» задаем путь к каталогу с PHP.
Для проверки работоспособности MySql, создаем файл с расширением php (например, file.php) в директории «htdocs» со следующим содержимым:
mysql_connect();
Если после открытия документа на экране увидите картинку, как ниже, значит все настроено правильно, MySql подключен и Apache готов к работе.
(Visited 6 008 times, 6 visits today)
windowsprofi.ru
В ней создадим 2 папки:
C:\Server\web – это папка в которой у нас будут лежать программы
C:\Server\domains – а в этой папке будут лежать наши сайты Итак, в папке \web\ мы создадим 3 папки для apache, php, mysql:
C:\Server\web\apache\
C:\Server\web\php\ C:\Server\web\mysql\ Далее перейдем в папку domains и создадим папку \localhost\
C:\Server\domains\localhost\
Внутри папки у нас будет 2 подпапки: public_html – для файлов сайта; logs – для текстовых файлов, в которых записывается «кто» получал доступ к сайту и какие ошибки в работе сайта появлялись.
C:\Server\domains\localhost\public_html\
C:\Server\domains\localhost\logs\ На этом структура папок заканчивается, переходим к настройке Apache.
www.apachelounge.com/download/win64
И скачиваем «httpd-2.4.6-win64.zip». Так же нам понадобиться для нормальной работы «Распространяемый пакет Microsoft Visual C++ 2010 (x64)». Для этого скачаем его по этой ссылке:
www.microsoft.com/ru-ru/download/details.aspx?id=14632
И устанавливаем. После того как скачался наш архив с Apache, откроем его. Открыв архив, мы увидим папку «Apache24», зайдем в нее. Появиться множество папок и файлов программы, все распаковываем в заготовленную ранее папку:
C:\Server\web\apache\
Должно получиться так:
C:\Server\web\apache\bin\
C:\Server\web\apache\cgi-bin\ C:\Server\web\apache\conf\ C:\Server\web\apache\error\ C:\Server\web\apache\htdocs\ C:\Server\web\apache\icons\ C:\Server\web\apache\include\ C:\Server\web\apache\lib\ C:\Server\web\apache\logs\ C:\Server\web\apache\manual\ C:\Server\web\apache\modules\ Папки, такие как \cgi-bin\, \htdocs\, \icons\ и \manual\ нам не нужны – можете их удалить. Перейдем в папку:
C:\Server\web\apache\conf\
И откроем файл конфигурации Apache – «httpd.conf» любым текстовым редактором. В этом файле каждая строка содержит директивы для настройки Apache, а строки, начинающиеся со знака # (решетка) – комментарий и пояснение. Приступим к настройке:Файл конфигурации Apache# директива Apache ServerRoot “C:/Server/web/apache” # Слушаем на локальном IP порт (80 по стандарту) Listen 127.0.0.1:80 # далее подключим библиотеки расширений для Apache LoadModule rewrite_module modules/mod_rewrite.so LoadModule php5_module "C:/Server/web/php/php5apache2_4.dll" # указываем Apache, что файлы с расширением php, нужно воспринимать как php-скрипты AddHandler application/x-httpd-php .php # укажем расположение файла настроек php PHPIniDir “C:/Server/web/php” # изменим имя сервера ServerName 127.0.0.1:80 # изменим доступ к директории Options Includes Indexes FollowSymLinks AllowOverride All Allow from all # директория с нашими сайтами DocumentRoot “C:/Server/domains” # индексные файлы, по приоритету. DirectoryIndex index.php index.html index.htm index.shtml
# папка для log-файлов
ErrorLog “C:/Server/domains/logs/error.log” CustomLog “C:/Server/domains/logs/access.log” # добавим alias для phpMyAdmin, и поправим alias для cgi Alias /pma “C:/Server/domains/phpMyAdmin” ScriptAlias /cgi-bin/ “C:/Server/web/apache/cgi-bin/”
# правим путь для cgi
AllowOverride None Options None Require all granted
# типы файлов
… 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 BrowserMatch "MSIE 10.0;" bad_DNT RequestHeader unset DNT env=bad_DNT На этом заканчивается настройка httpd.conf. В конфигурационном файле Apache httpd.conf были подключены дополнительные конфиги:
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 Откроем файл «C:\Server\web\apache\conf\extra\httpd-mpm.conf» и быстро пробежимся по нему.
# указываем, где у нас будет храниться pid-файл:
PidFile “C:/Server/web/apache/logs/httpd.pid” Остальные параметры оставляем без изменений. Откроем файл «httpd-autoindex.conf», изменим там только строки с путем:
Alias /icons/ "c:/Server/web/apache/icons/"
Options Indexes MultiViews AllowOverride None Require all granted Далее переходим к файлу «httpd-vhosts.conf», удаляем его содержимое. После того, как мы это сделали, начинаем наполнять его заново:Файл хостов Apache# на примере доменная localhost DocumentRoot "C:/Server/domains/localhost/public_html" ServerName localhost ErrorLog "C:/Server/domains/localhost/logs/error.log" CustomLog "C:/Server/domains/localhost/logs/access.log" common # добавим для будущего phpMyAdmin (не забываем создать папку) DocumentRoot "C:/Server/domains/phpmyadmin/public_html" ServerName localhost ErrorLog "C:/Server/domains/phpmyadmin/logs/error.log" CustomLog "C:/Server/domains/phpmyadmin/logs/access.log" common На этом редактирование файла заканчивается. Далее в оставшихся файлах правим только пути: Файл «httpd-manual.conf»:
AliasMatch ^/manual(?:/(?:da|de|en|es|fr|ja|ko|pt-br|ru|tr|zh-cn))?(/.*)?$ "C:/Server/web/apache/manual$1"
В файле «httpd-default.conf» никаких изменений не производиться. На этом настройка конфигурации Apache завершается.
www.anindya.com/tag/php
И скачиваем архив php последней версии. Нам нужен php как модуль, т.е. для этого скачиваем Thread Safe. После того как архив скачался, открываем его и переносим содержимое в папку «C:\Server\web\php\». Создадим две пустые папки «tmp» и «upload». Далее в этой папке ищем файл «php.ini-development» и переименовываем его в «php.ini». Открываем файл в текстовом редакторе и изменяем директивы (комментирования строк в файле начинается с точки с запятой).Настройка php.inishort_open_tag = On zlib.output_compression = On post_max_size = 64M include_path = ".;С:\Server\web\php\includes" extension_dir = "C:/Server/web/php/ext" upload_tmp_dir = "C:/Server/web/php/upload" upload_max_filesize = 64M extension=php_bz2.dll extension=php_curl.dll extension=php_gd2.dll extension=php_mbstring.dll extension=php_mysql.dll extension=php_mysqli.dll extension=php_pdo_mysql.dll extension=php_sockets.dll extension=php_sqlite3.dll ; в секции указываем временную зону нашего сервера (http://php.net/date.timezone) date.timezone = "Asia/Yekaterinburg" session.save_path = "С:/Server/web/php/tmp/" На этом настройка php заканчивается.
dev.mysql.com/downloads/mysql
В низу страницы находим Windows (x86, 64-bit), ZIP Archive и жмем на кнопку «Download». Вам перекинет на страницу регистрации на сайте. Нажимаем внизу страницы «No thanks, just start my download», запуститься скачивание архива MySQL. После того как скачался архив откроем его и перенесем все содержимое папки в «C:\Server\web\mysql\» Теперь открываем файл настроек MySQL – «C:\Server\web\mysql\my-default.ini». Удаляем все его содержимое и вносим туда свои данные.
Port=3306 host=127.0.0.1 port=3306 bind-address=127.0.0.1 enable-named-pipe basedir="C:/Server/web/mysql/" datadir="C:/Server/web/mysql/data/" sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES Вот и всё. В конфигурационном файле мы указали, что скрипты могут обращаться к серверу и по локальному IP, и по сокет-соединению. Осталось дело за малым. Добавим в системную переменную «PATH» пути к Apache и MySQL, для этого:
httpd –k install
Для установки MySQL:
mysqld.exe --install MySQL --defaults-file=”C:\Server\web\mysql\my-default.ini”
Установим пароль для MySQL-пользователя. Для этого запустим службу MySQL командой:
После того как служба запустилась, установим пароль:
mysqladmin –u root password ВашПароль
В файл «httpd-vhosts.conf» мы прописали два сайта, для того чтобы браузер мог их увидеть, названия сайтов нужно добавить в файла «hosts». Перейдем в папку:
C:\Windows\System32\Drivers\etc\
Откроем файл «hosts» любым текстовым редактором (запустить от имени администратора) и в конец файла добавим:
127.0.0.1 localhost
127.0.0.1 phpmyadmin Сохраняем файл. Для удобства запуска и остановки служб Apache и MySQL создадим файлы start-server.bat и stop-server.bat. Для этого перейдем в папку «C:\Server\» и создадим два этих файла. Содержание «start-server.bat»:
NET start Apache2.4 NET start MySQL Содержание «stop-server.bat»:
NET stop Apache2.4 NET stop MySQL Настройка Apache, PHP и MySQL на этом закончена. Для того чтобы протестировать сервер, давайте в папке «C:\Server\domains\localhost\public_html» создадим файл «index.php» с содержимым: Устанавливаем PhpMyAdmin Скачиваем последнюю версию PhpMyAdmin отсюда:
www.phpmyadmin.net/home_page/index.php
Открываем скаченный архив и переносим содержимое его папки в папку для нашего домена «C:\Server\domains\phpmyadmin\public_html\». Находим файл «config.sample.inc.php», делаем его копию и переименовываем копию в «config.inc.php». Открываем файл текстовым редактором и меняем данные: Сохраняем и закрываем файл. Открываем в браузере сайт «http://phpmyadmin» и наслаждаемся.
Статья получилась объемная, но надеюсь полезная.
Метки:
habrahabr.ru
Как установить Apache 2.4 вместе с PHP 5.6 и MySQL 5.6 на ОС Windows версий 7 - 10
Данный материал станет незаменимой инструкцией для начинающих веб-разработчиков при установке веб-сервера Apache с новыми версиями PHP интерпретатора на свой компьютер с Windows. Обычно, для этой задачи используется более простое решение – установка сборки. Это избавляет от необходимости возиться с настройками. Но именно понимание специфики работы веб-сервера, того, как правильно его установить и настроить – один из обязательных навыков веб-разработчика. Поэтому, будем разбираться.
Следует учесть: приведенные версии VC11 будет очень сложно, а то и вовсе невозможно запустить под Windows XP.
Для начала нужно удостовериться, что версия Windows на вашем компьютере не старше седьмой. Кроме того, приведенная в данной статье инструкция для Apache 2.4 не сработает для Windows XP.
Первым делом удалите все веб-серверы, которые были установлены прежде. Далее, нужно зайти в службы и удостовериться, что среди них нет Apache или IIS. При наличии любого другого веб-сервера, существует большая вероятность, что параллельно установленный не будет работать.
Если вы используете Skype на данном компьютере, то в его настройках нужно отключиться от 80 порта.
Вам понадобится менеджер файлов или редактор кода, для создания файлов различных разрешений.
Что касается структуры папок – она может быть различной, но именно эта инструкция была разработана под конкретную структуру, которую следует учесть, чтобы все работало на 100%.
Прежде чем приступить к процедуре установки, следует создать отдельную папку USR на диске D. Там нужно завести папки apache, php, tmp, www, log, не указывая номера версий. Используя менеджер файлов или редактор кода, создайте в каталоге www такие файлы:
Если у вас нет ни менеджера файлов, ни редактора кода, их необходимо скачать здесь. Данные инструменты обязательно необходимо иметь на ПК каждому разработчику.
В системной переменной PATH пишем:
;D:\USR\apache;D:\USR\apache\bin;D:\USR\php; |
Важно! Нумерация строк в конфигурационных файлах, для различных версий apache и php, может отличаться от приведенной.
Любые команды выполняются только от имени Админа, и редактирование файлов не исключение.
По большому счету, процесс разработки на PHP не подразумевает отдельного веб-сервера, так как там имеется встроенный веб-сервер и его, как правило, вполне хватает для разработки 1 проекта. Однако, мы советуем установить и настроить веб-сервер Apache как минимум, чтобы научиться всем тонкостям работы с данным веб-сервером и его конфигурацией. Данный навык наверняка пригодится вам в будущем.
D:\USR\apache\bin\httpd.exe -k install |
127.0.0.1 s1.localhost |
127.0.0.1 s2.localhost |
Чтобы добавить новый виртуальный хост нужно только завести отдельную папку для его файлов в D:\USR\www, для логов - в D:\USR\log, в файле hosts обозначить его название и добавить блок VirtualHost в файл конфигурации виртуальных хостов.
Вот он – великий и ужасный. Сгубивший на своём веку множество начинающих веб-разработчиков, сложивших головы на настройке его конфигурационных файлов. 🙂 Но мы с вами люди, крепких нервов и стальных желудков — поэтому, поехали.
Распакуйте архив дистрибутива в каталог C:\Apache2.
Откройте в текстовом редакторе файл «C:\Apache2\conf\httpd.conf», являющийся основным конфигурационным файлом сервера Apache.
Ну а теперь держитесь. Женщинам, старикам и детям просьба – дальше не читать. За психическое состояние людей, дочитавших статью до конца – авторы ответственности не несут. 🙂
Правка файла httpd.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.
Запускаем командную строку и вводим в ней «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
Ну что ж, мы поговорили достаточно о веб-сервере, пришло время его нам установить и опробовать в деле. Существует сформировавшийся перечень наиболее распространенных веб-серверов, при выборе во внимание принимаются конкретные задачи, под которые он разворачивается. Остановим наш выбор на бесплатном веб-сервере Apache. Считаю его идеальным для сайтов начального и среднего уровня. Конечно, можно пойти легким путем - установить готовый комбайн Denwer, как это делает большинство новичков, но в нашем случае помимо результата важны также и теоретические знания. А после сегодняшнего урока ваш скилл повысится однозначно:)
Идем на страницу загрузки проекта - http://httpd.apache.org/download.cgi и качаем последнюю стабильную версию под Windows в виде MSI инсталлятора (в моем случае это был apache_2.2.14-win32-x86-no_ssl.msi). Начнем установку. Первый диалог, который может ввести нас в заблуждение - это диалог ввода информации о сервере:
Конфигурировать наш сервер мы будем после установки, а сейчас давайте не будем особо париться и впишем в поля "Network Domain" и "Server Name" localhost, а в поле "Administrator"s Email Address" ваш адрес электронной почты (о том, что такое localhost, речь пойдет позже). Нижние переключатели не трогаем. Жмем "Next", соглашаемся с типичной установкой, еще раз "Next". Инсталлятор предложит выбрать директорию, в которую будет установлен веб-сервер:
На мой взгляд, путь слишком длинный, давайте сократим его до C:\Program Files\Apache . Продолжаем установку, дожидаемся ее окончания. После закрытия инсталлятора в трее появится значок Apache монитора:
Данная утилита позволяет запустить, остановить, перезапустить наш веб-сервер, узнать его статус. Сам же Apache установился у нас как сервис, который будет автоматически стартовать при загрузке компьютера:
Теперь давайте вспоминать то, о чем мы беседовали в статье . Как вы помните, у каждого компьютера, подключенного к сети, есть свой IP-адрес. Но даже если ваш компьютер не имеет ни одного сетевого подключения, у него есть как минимум один внутренний IP-адрес. Этот адрес - 127.0.0.1 . На всех компьютерах он одинаковый и указывает на сам компьютер. То есть, если сетевому клиентскому приложению указать адрес сервера 127.0.0.1, то клиент будет пытаться подключиться к серверу, расположенному на вашем же компьютере. Далее мы говорили о доменных именах, которые преобразуются в IP-адреса DNS-серверами. У внутреннего адреса 127.0.0.1 есть свое внутреннее доменное имя - localhost . При этом для преобразования этого имени в адрес компьютеру не нужно обращаться к DNS-серверу, так как это соответствие заложено в самом компьютере.
Давайте запустим веб-браузер и введем в адресную строку домен localhost:
Я надеюсь, вы понимаете, что произошло? Домен localhost преобразовался в IP-адрес 127.0.0.1, веб-браузер подключился к веб-серверу по этому адресу и 80 порту и запросил главную страницу с помощью протокола HTTP. То есть наш веб-сервер работает, он отправил браузеру страничку с надписью "It works" ("работает").
Приступим к настройке нашего веб-сервера, которая сводится к редактированию конфигурационных файлов Apache. Для начала необходимо обзавестись удобным, практичным и в то же время простым текстовым редактором. Если у вас такой уже есть - мои поздравления, если же вы несчастный пользователь Блокнота, могу предложить редактор . Перейдите в папку C:\Program Files\Apache\conf и переименуйте файл httpd.conf в httpd.conf.bak , чтобы в случае чего иметь под рукой начальную конфигурацию. Создайте новый файл httpd.conf со следующим содержимым:
ServerRoot "C:/Program Files/Apache"
Listen 80
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_default_module modules/mod_authn_default.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_default_module modules/mod_authz_default.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule include_module modules/mod_include.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
ServerName localhost
AccessFileName .htaccess
ServerTokens prod
LogLevel error
ErrorLog "logs/error.log"
DefaultType text/plain
AddDefaultCharset UTF-8
Разбираемся. ServerRoot - путь, куда установлен наш веб-сервер. Обратите внимание на слеши. Listern - указывается номер порта, который будет "слушать" веб-сервер, а также, если необходимо, IP-адрес (если у вашего компьютера несколько подключений и нужно принимать соединения только по одному из них). Мы указали порт 80, который является стандартным для веб-серверов. LoadModule загружает модуль веб-сервера, модули позволяют получить дополнительные возможности. В нашем конфигурационном файле прописан перечень стандартных модулей. AddDefaultCharset - кодировка по умолчанию, выставили юникод (UTF-8). Остальное пока нас мало волнует.
А теперь самое главное. Не забыли, для чего устанавливаем веб-сервер? Правильно, для работы над нашими будущими сайтами. Существует понятие корневой каталог - это каталог, где расположен контент сайта, то есть файлы, из которых он состоит. По умолчанию в нашем Apache корневым каталогом является каталог . Перейдя туда вы обнаружите там единственный файл под именем index.html . Это тот самый файл, который содержит главную страницу с надписью "It works" по адресу http://localhost . Дело в том, что если в запросе (который, кстати, называется url) отсутствует имя файла, то веб-сервер ищет файл с одним из стандартных имен. Эти имена (точнее, одно имя - index.html ) прописаны у нас в конфигурационном файле:
Таким образом, при запросе http://localhost веб-сервер будет искать файл C:\Program Files\Apache\htdocs\index.html , при запросе http://localhost/docs - C:\Program Files\Apache\htdocs\docs\index.html (в том случае, если docs - папка), при запросе http://localhost/news.html - C:\Program Files\Apache\htdocs\news.html и так далее.
При веб-строительстве удобно иметь не один, а, скажем, три локальных (находящихся на локальной машине) домена, на которых можно независимо тестировать ваши сайты. Apache позволяет обслуживать несколько сайтов, то есть вам не придется для каждого домена устанавливать свою копию веб-сервера (к тому же, мы помним, что на компьютере может работать только одно серверное приложение на определенном порту). Несколько доменных имен могут ссылаться на один и тот-же IP-адрес. Apache, в свою очередь, может в зависимости от доменного имени, переданного в HTTP-запросе (вспоминаем параметр Host, статья "Принципы функционирования веб-сервера"), искать файлы в определенном корневом каталоге. Такая технология называется "виртуальный хост" .
Итак, localhost соответствует адресу 127.0.0.1, давайте создадим еще три внутренних домена test-domain1, test-domain2 и test-domain3, которые будут соответствовать этому же адресу. Откройте в текстовом редакторе файл C:\WINDOWS\system32\drivers\etc\hosts . В этом файле можно задать соответствия доменных имен и IP-адресов. Здесь же мы обнаружим то самое соответствие localhost адресу 127.0.0.1. Добавьте в конец файла строки:
127.0.0.1 test-domain1 127.0.0.1 test-domain2 127.0.0.1 test-domain3
Перед обращением к DNS-серверу соответствие ищется в этом файле, и, если удачно, обращение отменяется и используется найденный адрес.
Следующим шагом необходимо каждому доменному имени создать свой корневой каталог и сказать об этом нашему веб-серверу. Удаляем в папке C:\Program Files\Apache\htdocs файл index.html и создаем там три папки: test-domain1 , test-domain2 и test-domain3 , в каждой из этих папок папку log - для логов и папку www - собственно, корневой каталог для домена. В конце файла C:\Program Files\Apache\conf\httpd.conf дописываем следующее:
NameVirtualHost *:80
Три блока VirtualHost описывают наши три виртуальных хоста. Каждому задается свой корневой каталог - DocumentRoot , путь к логу ошибок - ErrorLog и логу доступа - CustomLog .
В корневом каталоге каждого домена создайте по файлу index.html с содержимым "Hello from test-domain1", "Hello from test-domain2" и ""Hello from test-domain3". Чтобы изменения в конфигурации вступили в силу, необходимо перезапустить Apache (левой кнопкой мыши по значку Apache монитора -> Restart). Если ошибок не было допущено, должно все работать:
Поздравляю, теперь у вас есть настроенный веб-сервер с тремя локальными хостами. Раздолье для веб-мастера:) Самое время приступить к изучению основ веб-строительства.
(о параметрической настройке Apache 2.4.34 можно прочитать в другой статье)
Основная проблема установки Web-сервера Apache под Windows заключается в том, что после первичной установки дистрибутива весь пакет (исполняемые программы, конфигурационные файлы, файлы журналов работы сервера и файловая область для размещения Web-страниц) размещается в одном месте. Это мешает нормальной эксплуатации продукта по следующим причинам:
Поэтому установка Apache под Windows должна проводиться в два этапа:
При модификации конфигурационных файлов Apache нужно постоянно помнить, что в качестве разделителя путей к файлам и папкам должен использоваться символ "прямой слеш" , как в операционных системах Unix и Linux, а не "обратный слеш", как в Windows.
Для установки потребуется как минимум операционная система Windows XP SP3 (для этой устаревшей версии понадобится Web-сервер, сборка которого выполнена компилятором VC9 или VC10). Современные сборки Apache операционную систему Windows 2000 не поддерживают.
Дистрибутивный пакет Apache для Windows можно загрузить с сайта одного из двух "официальных" поставщиков: Apache Lounge (только версия 2.4, с документацией) или Apache Haus (версии 2.4 и 2.2, без документации). Он представляет собой ZIP-архив, который, по замыслу поставщиков дистрибутива, нужно распаковать в корень диска C:.
Поскольку мы всё равно будем проводить оптимизацию размещения файловой структуры Web-сервера, первичную установку нужно выполнить в ту папку, которая предназначена для размещения исполняемых модулей web-сервера (exe-, lib-, so- файлов и прочих, которые не подвержены изменениям). Это может быть системная папка "Program Files" или другая по выбору системного администратора.
После первичной установки нужно вынести из "базовой" папки в другое место на диске папки с файлами, которые "идеологически" относятся не к web-серверу, а к web-сайту. Для определённости будем предполагать, после распаковки дистрибутива все его компоненты находятся в папке "C:\Program Files\Apache24", а web-сайт будет размещаться в папке "D:\www".
Сразу после установки структура папок программного пакета Apache выглядит следующим образом:
Bin — исполняемые файлы Web-сервера.
cgi-bin
— CGI-сценарии Web-сайта.
conf
— конфигурационные файлы Web-сервера.
error — страницы ошибок протокола HTTP.
htdocs
— файловая область Web-сайта (проще говоря, здесь размещается Web-сайт).
icons — пиктограммы Web-сервера
include — подключаемые файлы заголовков (h-файлы), небоходимы при сборке Web-сервера компилятором VC.
lib — библиотечные файлы Web-сервера.
logs
— журналы работы Web-сервера.
manuals — документация в формате HTML.
modules — дополнительные программные модули Web-сервера (so-файлы).
Из перечисленных выше папок четырём (cgi-bin, conf, htdocs и logs) не место в базовой папке Web-сервера. Из нужно скопировать в рабочую папку Web-сайта: "D:\www". Исходные папки можно было бы удалить, однако они могут понадобится для восстановления начальной ситуации, если в ходе настройки Web-сервера что-то пойдёт не так. С другой стороны, если их оставить на прежнем месте, то из-за неполной настройки Web-сервера может случиться так, что использоваться будут именно эти папки, а не те, которые мы хотим. Поэтому после копирования их лучше просто переименовать в cgi-bin.0, conf.0, htdocs.0 и logs.0 соответственно.
Теперь можно отразить фактическую файловую структуру Web-сервера в параметрах конфигурационного файла "D:\www\conf\httpd.conf":
Обратите внимание, что в п. 2 нужно добавить в конфигурационный файл строку с параметром PidFile, т. к. в эталонном конфигурационном файле этот параметр отсутствует. Остальные параметры в конфигурационном файле уже присутстсвуют — нужно отыскать строки, содержащие их, и заменить исходные пути к папкам на новые.
Пунктом 10 предполагается, что для включения доступа к HTML-документации по ссылке "http://localhost:8080/manual" нужно раскомментировать соответствующую строку с параметром Include и указать новый путь к подключаемому конфигурационному файлу. Однако поскольку местоположение документации тоже изменилось, то потребуется дополнительно внести изменение в файл "D:\www\conf\extra\httpd-manual.conf" по аналогии с п. 3 и 8:
Поскольку мы изменили файловую структуру Web-сервера, запускать исполняемый модуль сервера нужно командой (её можно записать в bat- или cmd-файл): "C:\Program Files\Apache24\bin\httpd.exe" -w -f "D:\www\conf\httpd.conf" -d "C:\Program Files\Apache24\."
Запущенный в режиме пользовательского приложения Apache (т. е. запущенный с помощью только что приведенной командной строки) может быть остановлен комбинацией клавиш +[C]. Если же при этом возникли какие-нибудь трудности, то можно использовать такую команду: taskkill /f /IM httpd.exe
Чтобы установить Apache в качестве службы, надо выполнить команду: "C:\Program Files\Apache24\bin\httpd.exe" -k install -f "D:\www\conf\httpd.conf" -d "C:\Program Files\Apache24\."
Запуск и останов службы Web-сервера Apache производится командами: "C:\Program Files\Apache24\bin\httpd.exe" -k start и "C:\Program Files\Apache24\bin\httpd.exe" -k stop соответственно.
Удалить Apache из списка служб Windows можно с помощью команды: "C:\Program Files\Apache24\bin\httpd.exe" -k uninstall
Проверка правильности установки и первоначальной настройки Web-сервера выполняется вводом в Web-браузере URL: "http://localhost:80/". Если всё было выполнено правильно, должна открыться страничка с текстом "It works!"
Если устанавливалась сопроводительная документация в HTML-формате, то она должна быть доступна по ссылке "http://localhost:80/manual/"
Apache ведёт протокол доступа к сайту в файле "D:\www\conf\access.log". Сведения о проблемах в работе сервера записываются в файл "D:\www\conf\error.log". Его анализ может быть особенно полезен при настройке выполнения CGI-сценариев.
В дополнение к перечисленным выше настройкам нужно проверить значение параметра Listen, которым задаются настройки сетевого интерфейса (ip-адрес и номер TCP-порта), на котором сервер будет принимать клиентские подключения. Если Apache используется индивидуальным Web-разработчиком, то можно рекомендовать такую конфигурацию:
Listen 127.0.0.1:8080 # параметры сетевого интерфейса
Номер TCP-порта не должен конфликтовать с другим программным обеспечением, установленным на компьютере. Так, стандартный порт HTTP 80 часто бывает занят клиентом Skype. Для совместного использования сервера в сети нужно указать правильный IP-адрес или сетевое имя компьютера, на котором устанавливается Web-сервер.
Web-сервер Apache чаще всего используется совместно с интерпретаторами таких языков серверных сценариев, как PHP и Perl. Для того, чтобы на Web-сайте могли использоваться сценарии PHP (предполагаем, что PHP установлен в папку C:\PHP5), нужно добавить в конфигурационный файл "D:\www\conf\httpd.conf" следующие строки:
Нужно отметить, что в папке PHP5 должен существовать конфигурационный файл php.ini, созданный на основе файла php.ini-development (если сервер используется для разработки Web-сайтов) или php.ini-production (это настоящий Web-сервер). Чтобы модули PHP могли найти все необходимые им динамические библиотеки, путь к папке C:\PHP5 должен быть прописан в переменной PATH среды окружения Windows.
Серверные CGI-сценарии на языке Perl уже должны выполняться при соблюдении двух условий:
Для проверки можно ввести в браузере URL: http://localhost:8080/cgi-bin/printenv.pl, предварительно подправив первую строку сценария printenv.pl в соответствии с п. 2.
Остальные нюансы настройки Web-сервера Apache под Windows выходят за рамки этой статьи.
Скачать дистрибутив web-сервера Apache 2.2 можно тут: httpd-2.2.20-win32-x86-openssl-0.9.8r.msi . На основе инсталяции этого дистрибутива написана данная статья. Все версии HTTP-сервера Апач, ниже 2.2.20, подвержены серьезной уязвимости, информацию по которой можно прочесть, используя ссылку внизу страницы. На сегодняшний день ранее популярная, и считавшаяся наиболее стабильной ветка Apache 1.3 уже является устаревшей и разработчиками HTTP-сервера Apache рекомендуется к установке последняя стабильная версия Apache 2.2. Самые новые версии Apache доступны на официальном сайте: HTTP сервер Apache . Информация о том, как выбрать дистрибутив Apache, опубликована в статье .
Установка и запуск сервера Apache 2.2 в Windows XP с использованием бинарного дистрибутива с интегрированным инсталятором не представляет сложностей (инструкции в статье по больщей части применимы и для установки в Windows Vista и Windows 7 , тестирование проводилось исключительно для установки Apache в Windows XP).
Следует учесть, что если компьютер подключен к локальной сети/интернету - сайты под управлением Apache, по умолчанию, могут быть доступны всем пользователям локальной сети или интернет.
После запуска файла-инсталятора Apache 2.2 "httpd-2.2.20-win32-x86-openssl-0.9.8r.msi" нажимаем кнопку "Next", соглашаемся с лицензионным соглашением. В поля "Network Domain" и "Server Name" вводим "localhost" (без кавычек). "Administrator`s Email Address" - email администратора, например: admin@localhost. Оставляем выбранное по умолчанию поле "For All Users, on Port 80, as a Service -- Recommendend", которе делает Apache доступным для всех пользователей системы на 80 порту в качестве автоматичесски запускаемого сервиса при запуске Windows.
Следующий шаг мастера (Setup Type) - выбор типа установки: типичная (Typical) и выборачная (Custom). Следует выбрать "Custom" и нажать "Next". Далее нужно сменить путь установки на "C:\apache2.2.20" нажав кнопку "Change" и оставить выбранные по умолчанию компоненты как есть. После нажатия "Next" и "Install" HTTP-сервер Apache будет установлен.
В процессе установки появится 2 черных окна, которые закроются автоматически (закрывать их вручную нельзя). В случае успешной установки возле системных часов Windows отобразится новая иконка. Если на иконке зеленый треугольник - Apache запущен, красный квадрат говорит о том, что сервис по каким-либо причинам не стартовал.
Наберя в адресной строке браузера адрес http://localhost/ должна появится страничка с крупной, выделенной жирным шрифтом надписью: "It Works", что будет говорить о том, что Apache работает как положено. Если Apache запущен, а надпись "It Works" не появилась - следует поискать причину в брандмауэре и прочитать раздел этой статьи: "Ошибки при запуске Apache".
Узнать причину сбоя, точнее посмотреть сообщение об ошибке при запуске Apache можно при помощи консоли Windows ("Пуск" -> "Выполнить" -> cmd -> "Ок"), вручную запустив сервис. Команды управления Apache через консоль:
Чтобы Windows не выдал ошибку:
"httpd.exe" не является внутренней или внешней
командой, исполняемой программой или пакетным файлом.
Необходимо прописать путь к bin директории Apache в Windows переменную Path, что в дальнейшем может пригодится для быстрого запуска утилит командной строки Apache, например таких, как htpasswd.exe. Это можно сделать открыв меню "Пуск", найти "Мой компьютер" и нажав на нем правой кнопкой мыши выбрать из появившегося списка "Свойства". Далее выбрать закладку "Дополнительно" и нажать кнопку "Переменные среды". В окне "Системные переменные" выбираем переменную "Path" и жмем кнопку "Изменить". В самое начало поля "Значения переменной" добавляем путь к bin каталогу Apache:
Добавление пути в переменную Path Windows к директории bin Apache
C:\apache2.2.20\bin;
Для того, чтобы изменения в Path вступили в силу, необходимо перезагрузить компьютер .
Запуск сервера Apache вручную будет весьма полезен для выявления ошибок при подключении PHP как модуля и его дальнейшей настройке. При запуске, и перезагрузке Apache с помощью штатной консоли сообщения об ошибках, к сожалению, не отображаются.
Одной из самых распространненых ошибок, возникающей при запуске Apache, является занятость 80-го порта другой программой, например Skype или ISS. В результате, при старте сервера командой httpd.exe -k start получаем следующее сообщение:
httpd.exe: Could not reliably determine the server"s fully qualified domain name, using 192.168.1.2 for ServerName
(OS 10048)+сvўэю ЁрчЁх°рхЄё юфэю шёяюы№чютрэшх рфЁхёр ёюъхЄр (яЁюЄюъюы/ёхЄхтющрфЁхё/яюЁЄ). :
make_sock: could not bind to address 0.0.0.0:80 no listening sockets available, shutting down
Unable to open logs
Note the errors or messages above, and press the key to exit. 30...
Сообщение "could not bind to address 0.0.0.0:80 no listening sockets available" говорит о том, что 80-ый порт уже занят. Посмотреть, какой процесс занимает 80-ый порт можно запустив в командной строке Windows: netstat -anb и подождав несколько минут, пока не выведется весь список. Теперь нужно настроить ПО, мешающее Apache, на другой порт (в настройках программы), удалить его, либо, перенастроить Apache на другой порт.
Для того, чтобы убрать не критичную, но мозолящую глаза ошибку: "httpd.exe: Could not reliably determine the server"s fully qualified domain name, using 192.168.1.2 for ServerName", необходимо расскоментировать строку, в httpd.conf:
ServerName localhost:80
Запускать и останавливать службу Windows можно и такими командами из командной строки Windows:
Вот только в этом случае, сообщения об ошибках при запуске Apache будут не информативными.
Посмотреть состояние HTTP-сервера Apache можно и с помощью служб Windows: "Пуск" -> "Панель управления" -> "Администрирование" -> "Службы" -> "Apache 2.2". Тут также можно остановить и запустить HTTP-сервер.
Основной файл с настройками Apache httpd.conf расположен по умолчанию в директории conf, которая находится в корне установочной директории Apache (если Apache установлен согласно инструкциям статьи - директория Apache: C:\apache2.2.20). Добраться до файла конфигурации Apache можно через: "Пуск" -> "Все программы" -> "Apache HTTP Server 2.2" -> "Configure Apache Server" -> "Edit the Apache httpd.conf Configuration File".
Все строки-комментарии в файле httpd.conf , которые не воспринимаются HTTP-сервером Apache и служат только в качестве текстовых пояснений для администратора, начинаются с символа "# ". Удалив все комментарии из конфигурационного файла Apache можно существенно облегчить дальнейшее восприятие и редактирование настроек сервера. Перед удалением комментариев, желательно сохранить оригинальный httpd.conf в той же папке, где он и был под другим именем, например: httpd.conf.original.
При удалении комментариев в настроечном файле Apache следует быть внимательным, и не удалить лишнего. Удалять следует только строку, начинающуюся с символа "#". Например, в примере, приведенном ниже, следует оставить все строки, которые не начинаются с символа "#":
Произвольная часть конфигурационного файла Apache httpd.conf
#
# This should be changed to whatever you set DocumentRoot to.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs/2.2/mod/core.html#options
# for more information.
#
Options Indexes FollowSymLinks
#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride None
Перед началом конфигурирования HTTP-сервера Apache следует отметить, что все пути к файлам в httpd.conf следует разделять прямой косой чертой "/" , а не обратной "\", которая используется в Windows. Это необходимо для избежания некоторых проблем.
Пример использования "правильной" прямой косой черты "/" в путях к файлам в httpd.conf
ServerRoot "C:/apache2.2.20"
Также, следует знать, что чтобы настройки, измененные в httpd.conf, вступили в силу, необходимо каждый раз после их редактирования, перезагружать или останавливать и вновь запускать сервер Апач .
Находим в httpd.conf множество строк, начинающихся с LoadModule и после последней вставляем:
LoadModule php5_module "c:/php5.2.17/php5apache2_2.dll"
PHPIniDir "c:/php5.2.17"
Первая строка подгружает модуль php5apache2_2.dll, вторая - указывает интерпретатору PHP, где следует искать главный конфигурационный файл PHP - php.ini. В предидущих версиях PHP, необходимо было перемещать php.ini в главный каталог Windows, что вносило некоторую путаницу, при настройке PHP.
Далее указываем Apache, что файл index.php, также является индексным файлом, который запускается, когда в запросе клиента (например http://www.. Для этого меняем параметры директивы DirectoryIndex на:
DirectoryIndex index.php index.html
После сохранения файла настроек, нужно перегрузить Apache , чтобы изменения вступили в силу. Желательно даже не перезагружать, а выключить и включить Апач, с использованием командной строки, чтобы в случае возникновения ошибок, увидеть сообщение об ошибке.
Теперь необходимо удостовериться, что PHP-скрипты выполняются. Для этого, в каталоге C:\apache2.2.20\htdocs\ нужно создать файл phpinfo.php с таким содержимым:
phpinfo () ;
После чего, открыв в браузере страницу по адресу http://localhost/phpinfo.php появится страница с информацией о настройках интерпретатора PHP. Если вместо этого, отображается код скрипта, значить модуль PHP не подключен.
Из лог-файлов Apache, можно узнать много интересного, например, почему Apache не запустился? По умолчанию, основные лог-файлы хранятся тут: C:\apache2.2.20\logs. Изменить их месторасположение, можно путем настройки соответствующих параметров httpd.conf:
Виртуальные хосты Apache служат для обработки одним сервером Apache нескольких различных сайтов. Детальная информация по директиве VirtualHost: " ". Ниже будет рассмотрен пример, как в Apache, установленном в Windows, открыть поддержку нескольких сайтов.
Для начала следует создать основную папку, в которой будут храниться файлы всех сайтов: C:\www. В этой директории создадим две подпапки: mysite.lc и phpmyadmin.lc, в которых будут лежать файлы и конфиги Apache для сайтов: http://mysite.lc и http://phpmyadmin.lc. Далее в каждой из папок mysite.lc и phpmyadmin.lc, создаем еще по три подпапки: conf, log и public. В итоге, должна получиться такая структура:
Доменная зона "lc" (сокращение от английского "local") будет служить определением того, что открываемый сайт, располагается на локальном компьютере. Чтобы ОС Windows перенаправляла все запросы к локальным сайтам куда следует, необходимо отредактировать файл hosts (например, с помощью блокнота), находящийся в директории: C:\WINDOWS\system32\drivers\etc\. После "127.0.0.1 localhost" (хотя, по существу, место размещения добавляемых строк в файле может быть любым), необходимо добавить две строки и сохранить изменения:
127.0.0.1 mysite.lc
127.0.0.1 phpmyadmin.lc
Теперь вводим в адресной строке браузера адрес http://mysite.lc и http://phpmyadmin.lc , после чего в нем откроется страница с крупной, выделенной жирным шрифтом надписью: "It Works".
Файл hosts опрашивается системой при каждой попытке подключения к любому домену, поэтому для вступления изменений, внесенных в него, не требуется ничего перезагружать. Другое дело, если попытаться открыть домен http://mysite.lc до сохранения данных в hosts. При этом, браузер, скорее всего, запишет в кеш DNS информацию о том, что домен не существует, и при повторном открытии этой страницы, с уже модифицировнным файлом hosts, результат не изменится. В таком случае, чтобы добится нужного результата, нужно попытаться сбросить кеш DNS: "Пуск" -> "Выполнить" -> "cmd" -> ipconfig /flushdns . Если это не поможет, попробуйте открыть сайты в других браузерах. Крайняя мера, которая 100% помогает - перезагрузка компьютера.
Настало время "объяснить" Apache, что у каждого сайта есть свои каталоги, для чего и понадобятся директивы-контейнеры
Текст файла index.php для C:\www\mysite.lc\public\
echo "Mysite" ;
Текст файла index.php для C:\www\phpmyadmin.lc\public\
echo "Phpmyadmin" ;
Теперь в папках conf создаем настроечные файлы vh.conf виртуальных хостов:
vh.conf для mysite.lc в каталоге C:\www\mysite.lc\conf\
# Основное название сайта
ServerName mysite.lc
# Дополнительные названия сайиа
# *.mysite.lc - доступны все поддомены для mysite.lc
ServerAlias *.mysite.lc
DocumentRoot "c:/www/mysite.lc/public"
ServerAdmin [email protected]
# Пути к логам сайта
ErrorLog "c:/www/mysite.lc/log/error.log"
CustomLog "c:/www/mysite.lc/log/access.log" combined
# Настройки директории сайта
Order allow,deny
Allow from all
vh.conf для phpmyadmin.lc в каталоге C:\www\phpmyadmin.lc\conf\
ServerName phpmyadmin.lc
ServerAlias *.phpmyadmin.lc
DocumentRoot "c:/www/phpmyadmin.lc/public"
ServerAdmin [email protected]
ErrorLog "c:/www/phpmyadmin.lc/log/error.log"
CustomLog "c:/www/phpmyadmin.lc/log/access.log" combined
Order allow,deny
Allow from all
В httpd.conf, с самого низа, запускаем виртуальные хосты и подгружаем конфигурационный файл vh.conf для каждого сайта:
Настройка виртуальных хостов в httpd.conf
# Подключение виртуальных хостов
NameVirtualHost *:80
Чтобы применить новые настройки - перезагружаем сервер Apache.
Последнее обновление статьи: 2011/09/08
Apache - установка и настройка.
Все хорошо. На локальном компьютере Apache работает. В локальной сети Apache работает. А вот из сети интернет сервер Apache недоступен.
Вся локальная сеть подключена к сети интернет через прокси сервер UserGate 4.
Сделано правило для публикации веб сервера, но Apache не доступен из сети интернет
При любом значении порта Listen в httpd.conf, при Start-е в чёрном окне на 30 секунд выводится "Only one usage of each socket addressis normally permited: make_sock: could not bind to address ... no listening sockets available, shutting down Unable to open logs"
Listen address...
80 0.0.0.0:80
8080 0.0.0.0:8080
1234 0.0.0.0:1234
127.0.0.1:80 127.0.0.1:80
При этом, при наборе в адресной строке компьютера http://localhost/ на экране выводится "It works!".
Пожалуйста, подскажите, что делать.(Windows7,Internet Explorer9)
"При любом значении порта Listen" - Скорее всего у вас на 80 порту висит какое-то другое приложение. Найдите его и отключите/удалите/переведите на другой порт. Как это сделать - написано в статье. Как вариант - переведите Apache на другой порт.
Вы пишете в статье "Если вместо этого, отображается код скрипта, значить модуль PHP не подключен". Именно это у меня и происходит, хотя я сделал все как написано. Не подскажете в чем может быть причина?
Причина та же - PHP не подключен. Проверьте, что написано в логах Apache, также посмотрите внимательно настроечный файл Apache - раздел отвечающий за подключение модуля PHP. Если делать все, как написано в статьях - связка Apache + PHP + MySQL запускается с первого раза. Материал статей протестирован реальными успешными установками.
Ваш вопрос мне не понятен.
В инструкции тактично умолчали, что нужно в httpd.conf добавить
Эта строка не обязательна - PHP будет работать и без этой директивы.
Не работает несколько виртуальных хостов. Бьюсь уже месяца три, то одно попробую, то другое. Все настройки сделаны как тут описано. Один localhost работает. Если "Запихнуть" внуть папки localhost/www какой-нибудь каталог и обратиться туда по адресу localhost/каталог, то работает. А более никак (((((
В чем может быть причина? ОС Windows XP SP3, но редакция ZverCD - может в этом быть причина?
Помогите плиззз...
Причина точно не в сборке Windows. После того, как вы сделали все, как в инструкции, какую ошибку выдает браузер после обращения к mysite.lc и phpmyadmin.lc?
Первым сайтом прописан localhost, вторым site.ru. В виндовском файле hosts оба висят на 127.0.0.1.
При попытке зайти на site.ru долго-долго ищет хост и потом пишет "Не может отобразить страницу". В корне директории файл index.php и index.html лежит, и в любом случае если обратиться по адресу localhost/site.ru (там продублирован простой html), там все открывается. Либо если закомментировать хост по умолчанию (localhost) в Virtualhosts, тогда при наборе localhost открывается сайт site.ru.
Может, вместо localhost надо прописывать другое имя?
После изменения файла hosts попробуйте перезагрузить компьютер. Если сначала попытаться открыть в браузере site.ru, а только после этого изменить файл hosts - сайт не откроется. Далее запустите в cmd команду ping на localhost и site.ru. Если site.ru пингуется (127.0.0.1) - проблема в настройках Apache. Также, попробуйте на время теста отключить все антивирусы/файрволы - возможно проблема в них. Если ничего не поможет - переустановите Apache заново, полностью соблюдая все инструкции статьи (порядок действий, названия тестовых сайтов и т.д.) - должно все заработать. А уже после того, как все заработало, начинайте пробовать самостоятельную корректировку конфигов.
PHPIniDir "c:/php"
ошибку выдает "Неудалось запустить службу APACHE2 на локальный компьютер. Подробности содержатся в журнале системных событий. Если эта служба разработана не в Майкрософт обратитесь к разработчику службы и сообщите специфический для этой службы код ошибки 1"
при удалении вышеуказанных строк все снова работает
Большое Вам спасибо! Всё работает!
У меня php страница начала интерпретироваться только после добавления
AddType application/x-httpd-php .php
"У меня php страница начала интерпретироваться только после добавления
AddType application/x-httpd-php .php"
То же самое, 10 раз перезагружался, пока не полез в инет и не увидел, что еще нужно эту строку прописывать. Добавил, и все сразу заработало на Windows 7.
Установил Apache (httpd-2.2.20-win32-x86-no_ssl) под OC Windows 7,запускается,но Firefox не открывает стартовую страницу с:Its work! Пинг 127.0.0.1 localhost проходит, настройки NOD 32,Skype, файла vhosts.conf, что пишут в рекомендациях, проверены. В чём проблема? Помогите пожалуйста!
А точно ли, что строка "#ServerName localhost:80" в файле htpd.conf должна быть закомментирована? я создал файл CreateDB.php в котором прописал суть: "создать базу данных test". базу данных он создал, как я потом узнал из консоли самого mysql, но в браузере пишет "удаленный сервер или файл не найден". При этом файлы типа phpinfo.php и всякие "привет!" отрабатали без замечаний
Здравствуйте.
Проблема такая.Установил Apache2.2.20,PHP5.2.17
Вроде бы модуль PHP подключается,но любые попытки
обратиться http://localhost/phpinfo.php не приводят
к результату.Приведу текст из файла error/log
Apache/2.2.20 (Win32) PHP/5.2.17 configured -- resuming normal operations
Server built: Aug 30 2011 21:54:15
Parent: Created child process 8012
Child 8012: Child process is running
Child 8012: Acquired the start mutex.
Child 7488: Released the start mutex
Child 8012: Starting 64 worker threads.
Child 7488: All worker threads have exited.
Child 8012: Starting thread to listen on port 80.
Что делать,не знаю.Может подскажете.
Хорошая статья, но вы забыли упомянуть что при подключение php как модуля, так-же необходимо добавить конфигурацию для него:
После строк "
LoadModule php5_module "c:/php5.2.17/php5apache2_2.dll"
PHPIniDir "c:/php5.2.17"
"
Нужно прописать что-то типа "
AddType text/html .php
Поправка (Теги потёрлись)
"знак меньше"IfModule php5_module"Знак больше"
"знак меньше"Location /"Знак больше"
AddType text/html .php
AddHandler application/x-httpd-php .php
"знак меньше"/Location"Знак больше"
"знак меньше"/IfModule"Знак больше"
На компьютере Apache (httpd-2.0.64-win32-x86-no_ssl.msi)работает. После установки PHP - php-5.2.17-Win32-VC6-x86.zip все работает. Но после вставки в httpd.conf:
LoadModule php5_module "c:/php/php5apache2_2.dll"
PHPIniDir "c:/php"
Ошибку выдает "Неудалось запустить службу php5apache2_2.dll
и соответсвенно Apache не запускается в чём может быть причина????
PS.здесь ответа не нашёл!
To Alex
Извините что поздно, но может кому пригодится. В параметре директивы LoadModule нужно указывать dll, которая соответствует версии апача. Т.е. в Вашем случае это должна быть php5apache2.dll
Статьи по теме: | |
Установка счетчика Liveinternet
Для начала смотрим в нижнюю часть в раздел «На линии» и видим цифры 12 и... Как сделать название вашего youtube канала запоминающимся
Определите качества удачного названия. В названиях YouTube-каналов... Чем открыть PSD файл: просмотр, редактирование и конвертирование
Файл с расширение PSD является документам Adobe Photoshop, это файл с... |