Как установить на Windows Apache 2.4 и PHP 7
Проект Apache не предоставляет бинарные версии программного обеспечения, а только исходный код. Тем не менее, их можно получить на сторонних сайтах:
Теперь можно запустить сервер Apache Windows 7 :
Откройте командную строку от имени администратора и перейдите в подкаталог bin :
Установка PHP 7 в Windows
Настройка Apache для использования PHP
Скопируйте следующие строки в начало файла:
В разделе добавьте строку index.php и поместите ее перед index.html :
Включение mod_rewrite для перезаписи URL-адресов
Настройка PHP с MySQL
Отредактируйте файл php.ini и раскомментируйте каталог расширений. Удалите символ « ; » в начале строк:
Активируйте следующие строки, это даст возможность запуска модулей MySQL :
А также приведенные ниже строки, если вы используете установку Apache PHP MySQL Window s в среде разработки:
Как проверить, установлен ли PHP
Создайте файл по адресу C:Apache24htdocsphpinfo.php и добавьте в него следующий код:
Регистрация службы Apache
Если вы не хотите, чтобы Apache запускался автоматически при запуске / перезагрузке системы, введите:
Пожалуйста, опубликуйте свои отзывы по текущей теме статьи. Мы очень благодарим вас за ваши комментарии, отклики, лайки, дизлайки, подписки!
Ручная установка Apache и PHP на Windows Server 2012/2008
Установка Apache
Сначала загрузите последнюю версию Apache HTTP Server win32 и извлеките файлы в удобное место, например « C:Apache ». Если Apache установлен в « C: Program Files Apache2.2 », скрипты cgi и PHP могут некорректно находить пути к файлам из-за пробелов в именах каталогов.
Из приведенного выше фрагмента кода видно, что служба была установлена, но с ошибкой. Корневой каталог сервера нужно исправить до запуска службы, если значение каталога установки по умолчанию было изменено ( по умолчанию используется значение /Apache2.4 ). В данном случае это / Apache :
После того, как Apache был запущен и все настройки были заданы верно, при переходе по адресу http://localhost/ в любом браузере должна отображаться стандартная страница http или просто сообщение ” It works ”.
Установка PHP
Измените значение переменной « extension_dir » на “ C:phpext ”. По умолчанию она закомментирована или для нее установлено значение « /ext «. Также можно включить в php.ini необходимые расширения, удалив символ « ; » в начале строки:
Кроме этого нужно задать для переменной sessions.save_path папку временных файлов Windows ( то есть C:Temp ).
Каталоги PHP и Apache также необходимо добавить для переменных путей среды. Откройте Панель управления — Система и безопасность — Местоположение системы и добавьте “ ;C:php; C:Apachebin ” в конец списка « Системные переменные пути » и нажмите « ОК », чтобы сохранить изменения.
После внесения изменений сохраните файл httpd.conf и закройте его.
Пожалуйста, опубликуйте ваши мнения по текущей теме материала. За комментарии, дизлайки, лайки, подписки, отклики огромное вам спасибо!
Установка Web-сервера Apache 2.4 VC15 с интерпретатором PHP 8 в среде Windows
В те далекие времена, когда повсюду использовалась операционная система Windows XP, а установщики серверного программного обеспечения на данную операционную систему бинарными, были написаны темы «Установка Web-сервера Apache в среде Windows», «Установка интерпретатора PHP в среде Windows». Процесс установки происходил визуально, пользователям необходимо было запустить файл установки и следовать инструкциям. Но со временем разработки инсталлированных пакетов программного обеспечения прекратились, и сейчас необходимо самостоятельно их компилировать. Разработчики убрали файлы установок и оставили только исходный код, который нужно отредактировать и установить. Именно этот процесс и будет описанный в данной статье.
Инструкция, приведенная в данной публикации, будет полезна начинающим WEB-разработчикам, которые работают в среде Windows и хотят установить Web-сервер Apache 2.4 VS16 с интерпретатором PHP 7 последних версий.
Сразу нужно заметить, что Apache 2.4 VS16 не будет на Windows XP и 2003. Подходящие операционные системы: 7 SP1, Vista SP2, 8 / 8.1, 10, Server 2008 SP2 / R2 SP1, Server 2012 / R2, Server 2016/2019.
Для того чтобы успешно запустить веб сервер, следует загрузить соответствующий распространяемый пакет Visual С++ для Visual Studio, который содержит необходимые динамические библиотеки, например:
На момент написания статьи последней актуальной версией Apache является httpd-2.4.46-win64-VS16.zip. Скачать ее можно на сайте Apache Lounge.
VC15 значительно усовершенствована, исправлена и оптимизирована по сравнению с VC14 в таких областях, как Performance, MemoryManagement, имеет новые стандартные функции соответствия и генерация кода.
VS16 имеет улучшения, исправления и более оптимизированная по сравнению с VC15 в таких областях, как производительность, управление памятью, новые стандартные функции соответствия, генерация кода и стабильность.
Перед установкой необходимо загрузить и установить обновления Visual Studio 2019 с сайта Microsoft.
Аналогично статьям, написанных ранее, мы будем также придерживаться структуре директорий, а именно в корне диска «C:/» содержится папка «web_server«, внутри которой находятся подпапки: Apache, PHP и MySQL.
После скачивания архива необходимо разархивировать содержимое папки Apache24 в директорию «C:\web_server\apache«. Инсталлировать ничего не требуется.
Далее необходимо в файле «C:\web_server\apache\conf\httpd.conf» изменить следующее значения:
Параметр «ServerName» следует раскомментировать, а именно убрать символ решетки «#» перед параметром.
Найдите аналогичный блок, который начинается » » ( ) и заканчивается » «. Там будет много комментариев, не обращайте внимания. Эту секцию следует удалить, то есть все настройки для каталога со страницами должны зависеть от настроек по умолчанию, которые мы только настроили.
Инициализируем настройки «DirectoryIndex» так:
Это файлы индекса, которые автоматически возвращаются сервером при запросе к любому каталогу, если не указано имя «html» документа. Можно добавить дополнительно параметр «index.php«, но лучше дополнительные настройки делать в файлах «.htaccess» для каждого сайта отдельно.
Также можно использовать альтернативу командной строке PowerShell, запустив ее от имени администратора системы:
Более подробно можно почитать в статье: Запуск командной строки (Cmd, PowerShell) от имени администратора в Windows 10.
На экране может появится окно оповещения системы безопасности Windows, где мы должны подтвердить разрешения нажатием на «Разрешить доступ«:
Для более удобного управления Web-сервером можно создать на рабочем столе ярлык для:
и/или добавить его в автозагрузку.
Следующим действием мы запускаем ApacheMonitor и нажимаем Start.
Поздравляем! Вы успешно установили веб-сервер Apache на Ваш компьютер. В панели появится значок веб-сервера.
Если при работе в командной строке отобразилась ошибка:
Необходимо скачать и установить Visual C++.
Установка PHP 8
На официальном сайте PHP For Windows: Binaries and sources Releases скачиваем последнюю версию VS16 x64 Thread Safe. На момент написания статьи актуальная версия PHP 8.0 (7.4.9) с названием файла: php-8.0.1-Win32-vs16-x64.
Извлекаем содержимое архива в «C:\web_server\php«. Как в случае с Apache, инсталлировать ничего не требуется.
В файл «C:\web_server\apache\conf\httpd.conf» добавляем строки:
Обязательно необходимо добавить в конфигурационный файл Apache директиву «PHPIniDir«, которая позволяет точно указать месторасположение файла «php.ini«. После добавления директивы перезагрузите Apache и удостоверьтесь, что запуск прошел успешно.
Обратите внимание, что при записи пути обязательно используйте прямые слеши «/«. Apache и PHP изначально были созданы для работы на Unix-системах, где используются именно прямые слеши. Чтобы избежать ошибок, которые очень трудно найти, настоятельно рекомендуется использовать в конфигурационных файлах Apache и PHP прямые слеши в Unix-формате.
Здесь подразумевается, что конфигурационный файл «php.ini» хранится в директории «C:/web_server/php/«.
РНР имеет огромное количество разнообразных настроек, которые сосредоточены в файле php.ini. Сразу после установки интерпрератора PHP вместо файла php.ini можно обнаружить лишь два файла:
Для локальной разработки файл php.ini-development следует переименовать в php.ini.
Следующей операцией будет настройка конфигурационного файла PHP. Данные настройки выходят далеко за пределы данной статьи, но в большинстве случаев, значение директив по умолчанию подходят для разработки основных приложений. Более детально можно узнать о директивах на странице Директивы PHP.
В дистрибутивах для операционной системы Windows расширения, оформленные в виде динамических библиотек, скомпилированы, но не подключены. Обнаружить их можно в подкаталоге ext основной папки РНР-дистрибутива. Для того чтобы подключить одно из таких внешних расширений, необходимо отредактировать конфигурационный файл php.ini. В конфигурационном файле следует найти директиву extension_dir и указать в ней путь к папке с расширениями.
После того как путь к папке с расширением указан, можно активировать сами расширения, воспользовавшись директивой extension. В конфигурационном файле php.ini, как правило, уже добавлены закомментированные директивы для всех расширений из папки ext. Нужное расширение необходимо активировать, убрав точку с запятой из начала строки.
Особое внимание уделите библиотеке «php_mbstring.dll«, которая содержит функции для работы с много-байтными кодировками, к которым относятся кодирования восточных языков (японский, китайский, корейский), Юникод (UTF-8) и другие. Библиотека «php_mbstring.dll» должна присутствовать в директории «C:\web_server\php\ext\«.
В конфигурационном файле «php.ini» необходимо настроить следующие значения:
Далее необходимо раскоментировать (убрать крапку с комой впереди) расширения, которые должны быть подключены:
Перезапускаем Apache используя ApacheMonitor.
Для того, чтобы протестировать, как работает Web-сервер в связке с интерпретатором, переименуйте файл «index.html» на «index.php» в папке «C:\web_server\apache\htdocs» и заполните его таким содержанием:
Запустите браузер. Наберите в адресной строке «http://localhost/«. Если вы увидели несколько файлов в окне браузера, то нажмите на «index.php«. В результате должны увидеть страницу со служебной информацией о веб сервере и интерпретаторе PHP.
Убедиться в том, что РНР доступен, можно, запустив командную строку, а затем перейти в папку «C:\web_server\php» при помощи команды:
Выполнив в командной строке команду PHP с параметром -v, можно узнать текущую версию РНР:
Для того чтобы команда РНР была доступна в любой точке файловой системы, путь к РНР-интерпретатору следует прописать в переменной окружения РАТН.
Для доступа к переменным окружения нужно открыть Панель управления, перейти к разделу Система. В открывшемся окне щелкнуть по ссылке Дополнительные параметры системы. Затем необходимо выбрать пункт Переменные среды. В открывшемся диалоговом окне в разделе Системные переменные следует отыскать переменную окружения РАТН и дополнить ее путем к каталогу «c:\web_server\php«. Отдельные пути в значении переменной РАТН разделяются точкой с запятой (в конце всей строки точка с запятой не требуется). После этого команда PHP будет доступна в любой папке компьютера. Более подробно можно ознакомится на странице: Настройка системной переменной PATH.
Если вы параллельно работаете с несколькими проектами, то, скорее всего, понадобиться использовать виртуальные хосты (сайты). Их настройка описана в публикации: Создание виртуальных хостов Apache.
Установка MySQL сервера происходит без изменений, то есть, Web-сервер и интерпретатор PHP не влияют на его установку. Более подробно описано в публикации: Установка MySQL в Windows.
Apache2 loadmodule php windows
Этот раздел содержит примечания и подсказки к установке PHP, связанной с Apache 2.x на системах Microsoft Windows.
Сначала следует прочитать шаги ручной установки!
Крайне рекомендуется обратиться к » Документации Apache, чтобы получить базовое представление о сервере Apache 2.x. Также подумайте о чтении » Примечаний для Windows для Apache 2.x перед чтением этого руководства.
Загрузите последнюю версию » Apache 2.x и подходящую версию PHP. Следуйте шагам ручной установки и возвращайтесь, чтобы продолжить интеграцию PHP и Apache.
Существует три способа настроить PHP для работы с Apache 2.x в Windows. PHP можно запускать как обработчик, как CGI или под FastCGI.
Установка в качестве обработчика Apache
Чтобы загрузить модуль PHP для Apache 2.x, необходимо вставить следующие строки в файл конфигурации Apache httpd.conf :
Пример #1 PHP и Apache 2.x в качестве обработчика
Запуск PHP как CGI
Настоятельно рекомендуется обратиться к » Документации Apache CGI для более полного понимания того, как запускать CGI в Apache.
Чтобы запустить PHP как CGI, файлы php-cgi должны быть помещены в каталог, обозначенный как каталог CGI с использованием директивы ScriptAlias.
Строку #! необходимо будет поместить в файлы PHP, которые указывают на расположение бинарного файла PHP:
Пример #2 PHP и Apache 2.x как CGI
Используя установку CGI, ваш сервер открыт перед несколькими возможными уязвимостями. Пожалуйста, ознакомьтесь с разделом «Безопасность CGI» чтобы узнать, как можно защитить себя от таких атак.
Запуск PHP под FastCGI
Запуск PHP под FastCGI имеет ряд преимуществ перед запуском как CGI. Настройка таким способом довольно проста:
Загрузите mod_fcgid с » https://www.apachelounge.com. Бинарные файлы Win32 доступны для загрузки с этого сайта. Установите модуль в соответствии с прилагаемой к нему инструкцией.
Настройте свой веб-сервер, как показано ниже, позаботившись о том, чтобы все пути отражали то, как вы провели установку в своей конкретной системе:
Пример #3 Настройка Apache для запуска PHP как FastCGI
User Contributed Notes 33 notes
Please for the love of god, download the threaded version. I spent over an hour trying to figure out why php5apache2.dll could not be found, and while desperately looking through manuals I went into the php 5 structure and found that it doesn’t exist in the non-threaded version.
This really could use a mention somewhere other than the PHP 5 structure, like the paragraph to the left of the homepage which talks about which PHP version to choose, or this part of the manual which covers Apache. Anywhere but structure, seriously. I would have never guessed to look there.
If you come with an error like this: Wrapper xxxx cannot be accessed: blah blah blah when starting Apache.
You have 3 choices to solve this problem. Any one of them would work.
1. Reinstall your applictions in paths that do not contain spaces.
2. Place a backslash before every space in the path set to the FcgidWrapper directive in httpd.conf, like:
3. Use mklink (or junction for windows XP/2003) to create a symbol link to the path of php-cgi.exe’s containing folder.
run cmd.exe and type this command:
mklink /j C:\php\ «C:\Program Files\PHPServer\PHP».
or this command if you are on Windows XP/2003
junction C:\php\ «C:\Program Files\PHPServer\PHP»
Remember this : you need to download junction.exe to use it. Don’t know where to download? Google it.
Then the FcgidWrapper directive should be like this:
Don’t forget to change the paths above to your working paths.
With Apache 2.4 in Windows, it seems that PHPIniDir directive must come before LoadModule directive to be used. Also, name of the DLL file seems to be php5apache2_4.dll, not php5apache2.dll.
This configuration in httpd.conf works for me (Apache 2.4.10, PHP 5.6.5):
LoadModule php5_module «c:/php/php5apache2_4.dll»
SetHandler application/x-httpd-php
Running PHP under FastCGI:
Besides the following in your httpd.conf
Remember to add the following to the default block (or virtual host blocks):
i followed henke37’s way to for the httpd.conf
I added all this at the very end of httpd.conf
# For PHP 5
#load the php main library to avoid dll hell
Loadfile «C:\php-5.2.8-Win32\php5ts.dll»
#load the sapi so that apache can use php
LoadModule php5_module «C:\php-5.2.8-Win32\php5apache2_2.dll»
#set the php.ini location so that you don’t have to waste time guessing where it is
PHPIniDir «C:\php-5.2.8-Win32»
Also i didn’t use short open tags as they are disabled in
«php.ini-recommended» if you don’t change anything
So use this to test
();
?>
NOT
short open tags
added my php directory to the PATH system variable and i start apache manually not as a service
It works for me hope it helps you!
Installing Apache and PHP on Windows 7 Home Premium on a Gateway NV75S laptop with a quad AMD A6-3400M
All I need to do with these programs is to test my website out on my laptop. I have HTML and PHP files. I do not need MySQL as I use html5 storage.
Getting and installing Apache
1 Type localhost in your browser location box (I use Chrome) or type h t t p : / / l o c a l h o s t
(without the spaces)
2 The message It works! should appear.
Getting and installing PHP
Testing PHP with Apache
I am using Windows 8 x64, running Apache 2.2 and php 5.4.20
I found that it is necessary to add System Environment Variable PHPRC=[PHP path], so that php.ini is loaded using your PHP path, instead of C:\Windows.
This is how I do for my laptop
Go to Control Panel\System and Security\System\Advanced System Settings\Environment Variables
Add New System Variable
Name: PHPRC
Value: C:\php-5.4.20
Hope it relieve those who keep having empty string for Loaded Configuration File under phpinfo();
After spending few hours finally figured out that PHPINIDir path should be in single quotes and with backslash and php module with double quotes and regular slashes:
Everything configured and ran properly without php extensions, so I then reran the msi installer and chose the necessary extensions. I reconfigured httpd.conf but apache then just kept crashing.
Eventually I came across the «fix» mentioned elsewhere «copy libmysql.dll to apache folder» and suddenly it worked. But why? I checked and the php installation folder was in the system path. The answer was simply that I had never rebooted. It seems that whatever process controls windows services only reads the path at boot time. I was thrown by assuming that if I started httpd from the command line then it would inherit that path.
Here are a few diagnostic tips that helped me along the way:
Just a note
It might be important you include the absolute path to the php.ini file inside the httpd.conf file so that php may load all the module(s).
below is an example
OS: windows 2008
webserver: apache2.2
If you come with an error like this: Wrapper xxxx cannot be accessed: blah blah blah when starting Apache.
You have 3 choices to solve this problem. Any one of them would work.
1. Install your applictions in paths that do not contains spaces.
2. Place a backslash before every space in the path set to Wrapper, like:
3. Use mklink (or junction for windows XP/2003) to create a link to the path you have installed php in.
run cmd.exe and type this command:
mklink /j C:\php\ «C:\Program Files\PHPServer\PHP».
or this command if you are on Windows XP/2003
junction C:\php\ «C:\Program Files\PHPServer\PHP»
Remember this : you have to download online to use this application. Don’t know where to download? Go and Google it.
Then the FctidWrapper directive should be like this:
Don’t forget to change the paths above to your working paths.
install path c:/wamp/
php path c:/wamp/php
apache path c:/wamp/Apache24
used as Apache handler
#below for apache
#modify c:/ to c:/wamp/
#modify ServerName to localhost:80 and remove#
#DirectoryIndex insert index.php
#below for php
#rename file php.ini-production to php.ini
LoadModule php5_module «C:/wamp/php/php5apache2_4.dll»
PHPIniDir «C:/wamp/php/»
If you are having issues getting the PHPIniDir or LoadModule directives to work and all the suggestions already given do not help, double-check if you are not using fancy quotes around your paths (‘ ’ “ ”).
This happened to me because I copied the statements from a random website. In my text editor the difference was barely noticeable, but to Apache it certainly is!
For example, this will not work:
PHPIniDir “C:/PHP7”
But this will work:
PHPIniDir «C:/PHP7»
Windows Apache 2.4.12 (x64) PHP 5.6.5 (x64)
If your Apache still outputs code instead of parsing a script. Make sure you put a trailing «\» at the end of the PHPIniDir value and use ONLY «\» in path to PHPIniDir. And «/» in LoadModule. A very subtle «feature» of Apache module. Lost several hours after upgrading to apache x64 to resolve the issue.
Getting and installing Apache
1 Type localhost in your browser location box (I use Chrome) or type h t t p : / / l o c a l h o s t
(without the spaces)
2 The message It works! should appear.
Как подключить PHP к Apache на Windows
Начнём с того, что скачаем самую новую версию PHP для Windows с официального сайта: https://windows.php.net/download/
Там несколько вариантов, которые различаются:
Выбирайте самую последнюю версию, с той битностью, какая у вашего сервера. Т.е. если у вас Apache 64-битный, то PHP также должен быть 64-битным. Всегда выбирайте Thread Safe версию.
Для каждого файла имеется две ссылки:
Выбирайте Zip, поскольку отладочный пакет только для тех, кто действительно знает, зачем он им нужен. Здесь имеется ввиду не отладка PHP-скриптов, а отладка самого интерпретатора PHP.

Настройка PHP в Windows
Настройка выполняется в два этапа:
Подключение PHP к Apache
Для подключения PHP к Apache откройте конфигурационный файл веб-сервера, который расположен по следующему пути: Apache24\conf\httpd.conf (в папке сервера, в подпапке conf, файл httpd.conf).
В этот файл добавьте три строки, две из которых нужно откорректировать:
В первой строке вместо C:/путь/до/PHP напишите точный путь до папки, куда вы распаковали файлы PHP. В третьей строке C:/путь/до/PHP/php8apache2_4.dll также откорректируйте путь, указав расположение PHP папки.
К примеру, я распаковал PHP в папку C:/Server/bin/PHP, тогда мои настройки следующие:

Если папка PHP находится в корне диска C, тогда эти строки должны быть такими:
Чтобы изменения вступили в силу, перезапустите веб-сервер или компьютер.
Настройка PHP
В папке PHP найдите файл php.ini-development и переименуйте его в php.ini – это нужно сделать обязательно, иначе PHP не будет видеть сделанные настройки.
Открываем файл php.ini любым текстовым редактором, ищем строчку
Обратите внимание, что вам нужно скорректировать строку C:\путь\до\PHP\ext\, указав конкретный путь до папки, где размещены файлы PHP.
У PHP (как и у Apache) имеется много расширений. Если вы не знаете, какое расширение для чего нужно, то как минимум два варианта:
Чтобы подключить большую часть расширений, найдите группу строк:
теперь раскомментируйте эту группу строк:
Мы подключили самые востребованные расширения, чтобы работало как можно больше функций PHP.





