В этой статье мы рассмотрим процесс установки Apache 2.4.x и PHP 5.6.x на стандартной 64-разрядной версии Windows Server 2012/2008.
Бинарные версии Apache Windows Server в исходном репозитории недоступны, и мы вынуждены обратиться к сторонним дистрибутивам, таким как apachehaus.com. Я использую версию httpd-2.4.20-x64-vc11-r2.zip, которую можно скачать здесь. Она скомпилирована с помощью VC ++ 2012 (VC11). Убедитесь, что сервер установлен с применением VC11 64bit. Иначе могут возникнуть ошибки, такие как отсутствие необходимых модулей, или Apache не будет запускаться. Его можно загрузить прямо с зеркала Microsoft. Двоичные файлы PHP можно скачать отсюда. Я использую php-5.6.22-Win32-VC11-x64.zip, который скомпилирован с помощью vc11.
Установка Apache
Сначала загрузите последнюю версию Apache HTTP Server win32 и извлеките файлы в удобное место, например «C:Apache ». Если Apache установлен в «C: Program Files Apache2.2», скрипты cgi и PHP могут некорректно находить пути к файлам из-за пробелов в именах каталогов.
В этом примере мы создадим каталог Apache. Используя «Блокнот», откройте файл httpd.conf. Этот файл находится в подкаталоге /conf. Обратите внимание, что в конфигурационных файлах Apache в полных путях к файлу должны использоваться слэши «/».
Теперь можно попробовать установить Apache на Windows7. Откройте командную строку и перейдите в каталог «c:Apache bin» и введите команду httpd -k install:
c:Apachebin>httpd -k install Installing the 'Apache2.4' service The 'Apache2.4' service is successfully installed. Testing httpd.conf.... Errors reported here must be corrected before the service can be started. httpd: Syntax error on line 39 of C:/Apache/conf/httpd.conf: ServerRoot must be a valid directory
Из приведенного выше фрагмента кода видно, что служба была установлена, но с ошибкой. Корневой каталог сервера нужно исправить до запуска службы, если значение каталога установки по умолчанию было изменено (по умолчанию используется значение /Apache2.4 ). В данном случае это / Apache:
Define SRVROOT "/Apache" ServerRoot "${SRVROOT}"
После этого дважды кликните по исполняемому файлу монитора Apache Server или через командную строку введите start / stop / restart the service. Примеры команд для CMD приведены в следующем фрагменте кода:
c:Apachebin>httpd -k start c:Apachebin>httpd -k restart c:Apachebin>httpd -k stop The 'Apache2.4' service is stopping. The 'Apache2.4' service has stopped.
Если при запуске сервера Apache PHP Windows выводится сообщение об ошибке (приведено ниже), проверьте, запущен ли уже процесс httpd, выполняется процесс IIS и прослушивается порт 80. IIS является установленным по умолчанию веб-сервером, он настроен на порт 80:
c:Apachebin>httpd -k start (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_sock: could not bind to address [::]:80 (OS 10048)Only one usage of each socket address (protocol/network address/port) is normally permitted. : AH00072: make_sock: could not bind to address 0.0.0.0: 80 AH00451: no listening sockets available, shutting down AH00015: Unable to open logs
Если в данный момент IIS запущен, его можно отключить через «Диспетчер серверов». В командной строке введите «services.msc ». Найдите службу «web publishing platform », дважды кликните по ней мышью, чтобы открыть свойства службы и остановите ее. Чтобы запретить ее запуск при следующей перезагрузке, можно поменять тип запуска на ручной. Кроме этого, если на сервере установлен Skype, он также конфликтует с портом 80.
После того, как Apache был запущен и все настройки были заданы верно, при переходе по адресу http://localhost/ в любом браузере должна отображаться стандартная страница http или просто сообщение ”It works ”.
Установка PHP
Сначала загрузите двоичные файлы PHP и разархивируйте их в папку «C:php ». Затем переименуйте файл c:phpphp.ini-development в php.ini. Откройте его и измените значения нескольких переменных.
Измените значение переменной «extension_dir » на “C:phpext ”. По умолчанию она закомментирована или для нее установлено значение «/ext «. Также можно включить в php.ini необходимые расширения, удалив символ «;» в начале строки:
;extension=php_mbstring.dll ;extension=php_exif.dll extension=php_mysql.dll extension=php_mysqli.dll
Кроме этого нужно задать для переменной sessions.save_path папку временных файлов Windows (то есть C:Temp ).
Каталоги PHP и Apache также необходимо добавить для переменных путей среды. Откройте Панель управления — Система и безопасность — Местоположение системы и добавьте “;C:php; C:Apachebin” в конец списка «Системные переменные пути» и нажмите «ОК», чтобы сохранить изменения.
Перед перезапуском службы Apache Windows необходимо указать в файле httpd.conf модули PHP. Добавьте следующие строки в конец файла httpd.conf под раздел «LoadModule »:
LoadModule php5_module "c:/php/php5apache2_4.dll" AddType application/x-httpd-php .php PHPIniDir "C:/php"
Также нужно добавить «index.php » в раздел DirectoryIndex в файле httpd.conf, как показано ниже:
<IfModule dir_module> DirectoryIndex index.html index.php </IfModule>
После внесения изменений сохраните файл httpd.conf и закройте его.
Чтобы изменения вступили в силу, необходимо перезапустить службу Apache. Сделать это можно через монитор Apache Service или из командной строки — «httpd -k restart«.
Создайте новую страницу «index.php » в папке C:Apachehtdocs и поместите в нее любой php-код. Например, я использовал следующий код:
После сохранения изменений в файле откройте в браузере http://localhost/index.php, и если все в порядке вы увидите страницу phpinfo.
Мы завершили установку Apache PHP на Windows Server 2012. В файлах httpd.conf и php.ini многие модули отключены или закомментированы. Их можно включить, удалив комментарии и перезапустив службы Apache. Для доступа к сайтам / страницам из внешней сети убедитесь, что к файлу httpd.exe разрешен публичный доступ в Панель управления — Система и безопасность — Брандмауэр Windows — Разрешенные приложения.
Вадим Дворниковавтор-переводчик статьи «Installing Apache and PHP manually in Windows server 2012/2008»
1. Качаем со страницы http://httpd.apache.org/download.cgi файл «Win32 Binary including OpenSSL 0.9.8k (MSI Installer)». А вот прямая ссылка. Файл рекомендую сохранять в папку C:\distro.
2. Запускаем исполняемый файл C:\distro\apache_2.2.14-win32-x86-openssl-0.9.8k и перед нами появляется мастер установки
3. Нажимаем Next
4. Выбираем галочку «I accept the term in the license agreement», тем самым принимая лицензионное соглашение, и жмем Next
5. Жмем Next
6. Теперь перед нами окно «Server Information», будем заполнять его постепенно.
6.1 Прописываем в Network Domain и Server Name «domain.» соответственно без кавычек.
6.2 В поле Administrators Email вписываем либо свой email, либо произвольный — например support@microsoft.com
6.3 Ставим галочку «for All Users, on port 80, as a Service».
7. Жмем Next
8. Перед нами окно «Please select a setup type»: выбираем «Typical» (впрочем, в «Custom» ничего полезного и нету — только developer headers ) и жмем Next.
9. Выбираем «Destination Folder», оно стандартно выставлено в «C:\Program Files (x86)\Apache Software Foundation\Apache2.2\», так что меня не требуется, щелкаем Next.
10. Когда все вопросы о режимах установки решены, щелкаем Install для начала установки
11. Дожидаемся появления экрана «Installation Wizard Completed» и жмем Finish.
Убеждаемся, что Апач запустился и добавлен в автозапуск
Теперь надо убедиться, что сервис Apache запустился, для этого идем — Start -> Administrative tools -> Services и ищем там пункт «Apache2.2» и проверяем, что в поле status стоит «Started», а в поле «Startup type» стоит «Automatic».
Проблемы с соединением?
Но если Windows настроена правильно, то при попытке подключиться к адресу: http://ip.ad.dr.es нас ожидает страница «сервер не найден», т.к. фаерволл заблокировал соединение.
Настройка Windows Firewall
Идем по маршруту Start -> Administrative Tools -> Windows Firewall with Advanced Security. Теперь с левой стороны выбираем «Inbound Rules», т.к. нам необходимо разрешить входящие соединения на 80й порт. Теперь в меню выбираем Action -> New Rule.
1. Выбираем Port и щелкаем Next
2. В верху выбираем TCP, внизу «Specific local ports» и вводим 80. Выбираем Next
3. Allow the connection, Next
4. Next (т.к. у нас фактически вариант подключения всегда един)
5. В поле «Name» вводим «Apache22», а в поле «Description»: «Apache 2 Web Server». Выбираем Finish
Итак, теперь снова заходим на страницу: http://ip.ad.dr.es и должны увидеть надпись «It works!». Ну вот и все, серверный Виндовс побежден
Если вам необходим доступ в 1С из браузера в сети Интернет либо запуск в режиме тонкого клиента (что не требует лицензии 1С на рабочем месте пользователя) можно установить веб-сервер на компьютер или сервер с базой по этой инструкции.
Дистрибутив установки проверен на Windows 7 64x и на Windows Server 2008 R2. Для начала скачиваем и распаковываем в папку C:\Apache24\ архив:
https://www.apachelounge.com/download/VC11/binaries/httpd-2.4.25-win32-VC11.zip
Ставим Visual Studio:
https://www.microsoft.com/en-us/download/details.aspx?id=30679
Запускаем командную строку для установки службы:
Вводим команду для установки службы Apache:
cd C:\Apache24\bin — переходим в папку с файлом
httpd.exe -k install — устанавливаем службу
Если появилась ошибка (или похожая с крякозябрами):
(OS 10048) Only one usage of each socket address (protocol/network address/port) is normally permitted. : make_sock: could not bind to address 0.0.0.0:80
no listening sockets available, shutting down
Проверяем занят ли порт в той же командной строке:
netstat -aon | findstr 0.0:80
Если порт чем то занят будет отображено статус LISTENING по протоколу TCP:
Выясняем чем занят, пишем команду:
for /f «tokens=1,2,3,4,5*» %i in (‘netstat -aon ^| findstr «:80» ^| findstr /i listening’) do echo %j %l & @tasklist | findstr %m
Как правило этот порт занят скайпом. В настройках скайп Дополнительно => Соединение снимаем галочку «Для дополнительных входящих соединений следует использовать порты 80 и 443»:
Видим сообщение, что необходимо перезапустить скайп:
Перезапускаем скайп и пробуем установить снова через ту же командную строку:
cd C:\Apache24\bin
httpd.exe -k install
Видим сообщение о том, что служба успешно установлена (The Apache 2.4 service is successfully installed):
На Windows Server 2008 R2 появилась вот такая ошибка при установке, но служба Apache была установлена:
Теперь добавим монитор служб Apache (C:\Apache24\bin\ApacheMonitor.exe) в автозагрузку Windows и запустим его:
Открываем Apache Service Monitor в трее, видим зеленый значок рядом с названием Apache 2.4 и проверяем работу в браузере. Переходим по адресу localhost и видим надпись It works!:
В Windows Server 2008 R2 значок у меня был красный, это означает, что служба не запустилась. В моем случае помогла остановка службы SQL Server Reporting Services (от установленного Microsoft SQL Server 2008 R2) и запуск службы Apache через монитор:
После перезагрузки служба запустилась корректно.
Чтобы ваш веб-сервер 1С был виден в локальной сети, нужно установить статический IP адрес для сетевой карты компьютера-сервера. После этого открыть для редактирования файл C:\Apache24\conf\httpd.conf и поменять в нем строку на Listen ваш статический ip:80:
Также нужно зайти в Брандмауэр => Дополнительные параметры => Правила для входящих подключений и создать правило для порта 80 по протоколу TCP «Разрешить подключение» для всех профилей.
Теперь можно публиковать базы 1С на веб-сервере, запуск из окна браузера 1С Управление торговлей 11 будет выглядеть так:
Вводная часть
Напоминаю, в этой серии статей я собираю локальный сервер (WAMP) под управлением Windows, на пример Windows 7.
Давайте еще раз проясним ситуацию с версиями и дистрибутивами Apache, а также вспомним источники скачивания.
1. Во-первых, для сборки локального сервера на своем компьютере, лучше устанавливать версию Apache http той же архитектуры, что и архитектура вашего компьютера. То есть, на 32 битную сборку Windows, ставим Apache (httpd-2.x.xx-win32), на 64 битную Windows ставим Apache (httpd-2.x.xx-win64). Можно ставить 32 битную программу на 64 битную архитектуру, но в работе некоторых модулей могут быть проблемы.
2. Во-вторых, для Windows есть два варианта установки Apache. Первый дистрибутив со встроенным инсталлятором, файл MSI. Второй дистрибутив, простой zip архив с архивированными каталогами Apache.
3. В-третьих, скачивать дистрибутивы нужно только с официальных сайтов:
- https://www.apachelounge.com/download/
- http://httpd.apache.org/docs/current/platform/windows.html#down
В этой статье мы устанавливаем apache без инсталлятора, httpd-2.4.20-win32-VC14 windows 7 32 битной архитектуры.
Для установки Установка Apache 2.4 binaries VC14 без инсталлятора понадобится следующее программное обеспечение компьютера: Windows 7 SP1, 8 / 8.1, 10, Windows Server 2016, 2008 R2 SP1, 2012 / R2, Windows Vista SP2.
Установка Apache 2.4 без инсталлятора, по шагам
- Скачиваем ZIP архив Apache нужной архитектуры (ссылки выше).
- Распаковываем архив.
В архиве Apache есть папка Apache24. Разархивируйте zip архив, так, чтобы папка Apache24 была на системном диске: с: /Apache24. В этом случае корневым каталогом для веб-страниц локального сайта будет каталог: c:/Apache24/htdocs.
Если распаковывать Apache в другой каталог, нужно открыть файл: Apache24/config/httpd.conf и изменить 37 строку: ServerRoot «c:/Apache24» и указать нужный patch до папки Apache24.
Кроме этого придется менять patch в других файлах сервера, поэтому остановимся на варианте распаковки по умолчанию: c:/Apache24.
Запуск Apache
После не хитрой и не сложной распаковки запускаем Apache из командной строки. Командную строку запускаем из меню «Пуск»→Стандартные программы. Обязательно открываем командную строку от имени администратора. В командной строке пишем:
c:/Apache24/bin/httpd.exe –k install
Жмем: [enter]
Эта команда установит Apache, как службу Windows.
Запуск
Чтобы запустить Apache, идем в папку c:/Apache24/bin/ и видим файл запуска сервера Apache. Отправляем его в меню «Пуск» или сразу запускаем. После запуска, в трее появляется значок запуска Apache 2.4.
На фото вы видите, значок Apache в трее, как в прошлой статье: Установка Apache MSI: пошаговая установка Apache. Можно запускать apache из трея. Установка Apache 2.4 без инсталлятора завершена.
Видео статьи
Выводы
Собирая WAMP вручную, помним следующее:
- Apache устанавливаем в папку c:/www или c:/Apache24
- PHP устанавливаем в папку c:/php
- MySQL устанавливаем в папку: c:/Program files/MySQL/MySQL Server5.5
Ошибки установки Apache 2.4 binaries VC14
В процессе установки Apache можете получить ошибку: Отсутствует VCRUNTIME140.dll. Чтобы её исправить, ставим: Visual C++ Microsoft, в него входит VCRUNTIME140.dll. Замечу, что отдельно можно найти и скачать этот файл, но запустить его отдельно не получится. Поэтому, скачиваем Visual C++ (https://www.microsoft.com/ru-ru/download/confirmation.aspx?id=48145) и устанавливаем его. Всё, ошибка отсутствия VCRUNTIME140.dll решена.
©www.wordpress-abc.ru
Другие статьи раздела: Локальный сервер
Problem:
How to setup Apache on a Windows 2008 Server with IIS?
Solution:
This article shows you how to configure IIS and install Apache on a Windows 2008 server. In this example the Microsoft Windows 2008 Server will be configured with two IP addresses bound to the single NIC. The intention is to let IIS run on the primary IP Address of 192.168.0.10 and Apache to run on the second IP Address 192.168.0.11
To verifiy you have two IP addresses open a command prompt and type ipconfig. The results should indicate that at least two IP Addresses have been bound.
Configure IIS to bind it to one IP Address
By default IIS listens on port 80 and 443 on all IP Address.
C:\Windows\system32>netsh
netsh>http
netsh http>add iplisten 192.168.0.10
IP address successfully added
netsh http>show iplisten
IP addresses present in the IP listen list:
192.168.0.10
To make IIS listen to a specific port use the syntax: add iplisten 0.0.0.0:XXXX. Replace XXXX with the port number, for example, 8080.
It is also necessary to edit the bindings of each site inside IIS Manager. To do this run IIS Manager and select «edit bindings» of the «Default Web Site» and ensure the IP Address isn’t a «*» otherwise it will still listen on all addresses. In this example we simply change the IP Address to 192.168.0.10
Install Apache on the Windows 2008 Server
Download the Apache Server from www.apache.org and install.
Once the installation is complete edit the httpd.conf file from the Apache/conf directory and edit the line starting ServerName.
ServerName 192.168.0.11:80
If this line is commented out on your httpd.conf then look for the line starting Listen and change that
Listen 192.168.0.11:80
In this example we have told Apache to listen on port 80 on the IP Address of 192.168.0.11