Как вручную установить Apache, PHP и MySQL в Windows?

Как установить Apache с поддержкой PHP и сервером MySQL в Windows без использования готовых к использованию пакетов, таких как WAMPServer или XAMPP?

2 Solutions collect form web for “Как вручную установить Apache, PHP и MySQL в Windows?”

апаш

Во-первых, я рекомендую вам прочитать Специфичные для платформы примечания Apache для Windows – он объясняет некоторые специфические для Windows функции, такие как запуск в качестве службы, которой у вас нет на других ОС, и вы, вероятно, никогда раньше не использовали ее.

Как упоминалось в этих примечаниях к этой платформе, Apache не предоставляет двоичные файлы для Windows, однако у них есть ссылки на несколько сторонних сайтов, которые предоставляют двоичные файлы, например Apache Lounge .

С этого веб-сайта мы можем загрузить либо 32-разрядную версию (win32), либо 64-разрядную (Win64) – если ваша ОС 64-разрядная, вы всегда должны пытаться установить 64-разрядные версии программного обеспечения, но обратите внимание, что вы Также потребуется использовать 64-битные модули, это означает, что если у вас есть только 32-битный модуль, загрузите 32-разрядный Apache.

Вот версия, которую я использовал при написании этого: Apache 2.4.10 Win64 – это была последняя версия, когда этот ответ был последним (посмотрите дату редактирования в нижней части сообщения).

После загрузки просто распакуйте папку Apache24 в корень вашего жесткого диска, чтобы у вас был такой путь, как C:\Apache24\bin .

Откройте окно командной строки (Windows + R и введите cmd затем нажмите Enter), смените каталог на C:\Apache24\bin и запустите httpd.exe , обычно он не должен печатать какие-либо ошибки.

Если вы получите диалоговое окно с сообщением о том, что MSVCR110.dll отсутствует в вашей системе, вам необходимо установить Visual C ++ Redistributable для Visual Studio 2012 – как всегда, при появлении запроса выберите соответствующую битовую версию: vcredist_x86.exe для 32 -Bit и vcredist_x64.exe для 64-разрядных.

Если вы получите сообщение о том, что он не может привязываться к порту 80, проверьте, использует ли другое приложение этот порт – также известно, что Skype использует порты 80 и 443 по умолчанию; Снимите флажок «Использовать порт 80 и 443 в качестве альтернативы входящим соединениям» в настройках расширенного подключения , перезапустите Skype, чтобы применить изменения, а затем вы можете запустить Apache без проблем.

Предупреждение, подобное Could not reliably determine the server's fully qualified domain name может быть проигнорировано.

Брандмауэр Windows может предложить вам разрешить Apache общаться в определенных сетях, я рекомендую вам использовать настройки по умолчанию: разрешить его на домашних и рабочих сетях, но не на общедоступных / ненадежных сетях.

Затем откройте браузер и перейдите к http://localhost , если вы увидите страницу с сообщением « It works ! То это означает, что ваша установка Apache работает.

Теперь вы можете остановить текущий Apache, нажав Ctrl + C в командной строке.

Если вы получили предупреждение о невозможности определить полное доменное имя системы, исправьте его, отредактировав C:\Apache24\conf\httpd.conf и отредактировав переменную ServerName (она должна быть уже там в комментарии, просто раскомментируйте ее И измените его):

 ServerName <yourhostname> 

Замените <yourhostname> именем хоста системы или localhost .

Наконец, если вы хотите запустить сервер автоматически при запуске системы (даже если никто не входит в систему), вам нужно запустить его как службу – в новой командной строке с повышенным (как администратором) введите:

 httpd.exe -k install 

Вот и все, теперь у вас новая служба в службах (Windows + R, затем введите «services.msc», затем нажмите «Ввод») с именем «Apache2.4», которую вы можете контролировать точно так же, как и любая другая служба Windows.

Ограничение доступа Apache к localhostнеобязательно

Если вы настроите это для целей разработки, вы хотите удостовериться, что никто, кроме вас, не может получить к нему доступ, ваш брандмауэр должен уже позаботиться об этом, но давайте добавим к нему еще один уровень безопасности, сообщив Apache принимать запросы от локального Машина только.

Откройте конфигурационный файл Apache C:\Apache24\conf\httpd.conf , найдите блок по умолчанию <Directory "c:/Apache24/htdocs"> .

В конце, если это, должна быть строка Require all granted , это означает, что любой может получить доступ к этому серверу. Давайте сделаем Require local который разрешает доступ только с локальной машины.

Кроме того, вы можете сказать Apache только привязываться к интерфейсу loopback, таким образом, даже если оба брандмауэра и директивы управления доступом, упомянутые выше, терпят неудачу, сервер по-прежнему не будет открыт для всего Интернета.

Для этого найдите директиву Listen (по умолчанию установлено значение 80 ) и измените его на следующее:

 Listen 127.0.0.1:80 Listen [::1]:80 

Первая строка является самоочевидной, вторая – первой, эквивалентной IPv6, скобки используются в нотации IPv6 для разделения адреса и порта.

Сохраните файл, если вы уже запустили сервер, а затем перезапустите его, чтобы внести изменения в учетную запись, и теперь только у localhost есть доступ, все остальные получат 403 Forbidden .

PHP

Я предлагаю вам прочитать официальную документацию PHP об установке ее в системах Windows.

Загрузите последние двоичные файлы PHP с официальной страницы загрузки PHP для Windows , выберите потокобезопасную версию, которая соответствует битовой версии установки Apache (x86 для 32-разрядных, x64 для 64-разрядных).

Безобезопасная версия доступна только при запуске как двоичный файл CGI – больше информации здесь .

Версия, которую я использовал, такова: PHP 5.6.2 VC11 x64 Thread Safe – это была последняя версия, когда последний ответ был получен (посмотрите дату редактирования в нижней части сообщения).

Создайте пустую папку PHP в корневом каталоге вашего жесткого диска и извлечете ранее загруженный архив там, у вас должен быть такой путь, как C:\PHP\ext , иначе вы сделали что-то не так.

В C:\PHP переименуйте php.ini-production или php.ini-development (в зависимости от того, что вы хотите) для php.ini .

Откройте этот файл php.ini , найдите extension_dir = "ext" и раскомментируйте эту строку (удалите first ; ). Это устанавливает dir для расширения по умолчанию в ext (который разрешает C:\PHP\ext и избегает необходимости добавлять ext/ к всем путям расширения вручную, как в предыдущих версиях этого сообщения.

(Ниже приведено только для PHP 5. Для PHP 7 см. Ответ @ Rahul2001)

Теперь настройте Apache для использования этого PHP, отредактировав C:\Apache24\conf\httpd.conf – после всех строк LoadModule добавьте следующее:

 LoadModule php5_module C:/PHP/php5apache2_4.dll <IfModule php5_module> DirectoryIndex index.html index.php AddHandler application/x-httpd-php .php PHPIniDir "C:/PHP" </IfModule> 

Теперь попробуйте запустить Apache вручную, открыв командную строку в C:\Apache24\bin и запустив httpd.exe – если вы не видите ошибок, это означает, что ваш файл конфигурации действителен, и PHP, скорее всего, работает .

Вы можете протестировать свою установку PHP, создав файл, такой как info.php с <?php phpinfo(); Внутри и перейдя по http://localhost/info.php – вы должны увидеть довольно много информации о своей системе и вашей установке PHP и всех ее модулях. Если вы получаете что-то другое, например, «Внутренняя ошибка сервера», это означает, что что-то не так.

Теперь вы можете убить текущий процесс Apache (Ctrl + C в консоли) и запустить службу – следующая часть не взаимодействует с Apache и может быть выполнена с уже запущенным сервером.

Композитор – необязательный

Composer – это инструмент управления зависимостями в PHP, например, менеджер пакетов. Это позволяет легко устанавливать пакеты PHP и даже целые фреймворки.

Composer требует, чтобы расширение OpenSSL PHP было включено, поэтому давайте включим его в C:\PHP\php.ini .

Используйте функцию поиска в текстовом редакторе для поиска php_openssl.dll , там должна быть прокомментированная строка, просто раскомментируйте эту строку.

Теперь загрузите установщик Windows Composer со своей страницы загрузки – или просто используйте эту прямую ссылку .

Следуйте инструкциям, когда будет предложено php.exe путь к PHP, перейдите на C:\PHP и выберите php.exe .

Вот и все, Composer теперь установлен в системном масштабе и может использоваться из любого места – вы можете попробовать его, просто откройте новую командную строку (вы не можете использовать ту, которая уже открыта, так как она должна читать новую PATH установленную Установщик композитора) и тип composer .

Вы должны получить хороший логотип ASCII-art и что-то вроде этого:

 Composer version e87bc894daf8d5f8e77a01dd7ae5f0446ae30b14 2014-05-01 15:40:28 

Расширения PHP MySQL – необязательные

Если вы хотите получить доступ к своей базе данных MySQL из PHP, вам нужно включить расширения, которые позволяют это сделать, например php_mysqli или php_pdo_mysql Я рекомендую включить их обоих.

Откройте файл конфигурации PHP C:\PHP\php.ini в текстовом редакторе и найдите php_mysqli или php_pdo_mysql – они уже должны быть там, раскомментируйте их.

Теперь вы можете получить доступ к любой базе данных MySQL, используя либо mysqli либо PDO .

MySQL

На странице загрузки установщика mysql-installer-web-community-xxxxx.msi загрузите веб-установщик mysql-installer-web-community-xxxxx.msi .

Я использовал mysql-installer-web-community-5.6.21.1.msi – это была последняя версия, когда последний ответ был последним (посмотрите дату редактирования в нижней части сообщения).

Установщик автоматически установит соответствующую версию (32-разрядную или 64-разрядную) в зависимости от вашей системы, хотя битовая версия MySQL не должна совпадать с версией Apache и PHP, но все же полезно использовать 64-битную версию вашего Система поддерживает его, чтобы использовать более 3 ГБ оперативной памяти , что очень важно, поскольку серверы баз данных имеют тенденцию использовать много оперативной памяти.

Следуйте инструкциям установщика, если вы устанавливаете это для разработки, тогда ваш Developer default будет вашим лучшим вариантом, он также установит MySQL Workbench, который является родным клиентом GUI, таким образом, вы избегаете установки медленных веб-инструментов Например, PHPMyAdmin, если вам не удобно использовать клиент командной строки.

Как только все будет установлено, установщик запросит у вас некоторые базовые значения конфигурации, я рекомендую отключить «Открыть порт брандмауэра для сетевого доступа», если вы не хотите получить доступ к базе данных с другого компьютера в сети.

Установите пароль root – если он предназначен только для целей разработки, а ваш брандмауэр блокирует входящие соединения из сети, тогда сильный пароль не требуется.

Наконец, вы можете отключить бесполезный опознаватель MySQL, щелкнув правой кнопкой мыши значок в трее, перейдя в «Действия -> Параметры», затем снимите флажок « Run at Windows Startup и примените его. Это избавит вас от нескольких МБ ОЗУ и не замедлит работу вашего компьютера при загрузке.

И все, теперь у вас есть полностью функциональный WAMP-сервер, который работает как служба и не зависит от какого-либо пользователя (доступный, даже если никто не вошел в систему).

Обратите внимание, что я понятия не имею о безопасности этого, для целей разработки, я бы сказал, что это довольно безопасно, поскольку ваш брандмауэр должен блокировать входящие подключения для Apache (порт 80 и 443) и MySQL (порт 3306).

Это было протестировано на установке Windows 7, оно также должно отлично работать на Vista, Windows 8 и, возможно, на Windows Server 2008/2012 – не стесняйтесь комментировать и / или делать снижением, если это не так.

PHP 7

Инструкции в приведенном выше ответе работают отлично с июля 2017 года, однако, если вы хотите использовать PHP 7, вы должны добавить следующие строки в C:\Apache24\conf\httpd.conf , а не те из них в этом ответе (которые Работать только для PHP 5) [Добавить следующие после всех строк LoadModule ] :

 LoadModule php7_module C:/PHP/php7apache2_4.dll <IfModule php7_module> DirectoryIndex index.html index.php AddHandler application/x-httpd-php .php PHPIniDir "C:/PHP" </IfModule> 

Убедитесь, что все пути верны. Если у вас нет php7apache2_4.dll в вашем каталоге PHP, вы, вероятно, скачали неправильный пакет.

  • Служба Apache сервера WAMP не запускается в Windows 8
  • Предоставить доступ к моей локальной компьютерной форме вне
  • Linux устанавливает сервер для статического ip и имени сервера
  • Доступ к веб-серверу в подсети
  • Bugzilla, нет логина для просмотра ошибок
  • Обновление сайта с git (over ssh)
  • VM на хосте ESXi - Как сделать доступным извне?
  • Как я могу настроить «локальный» домен, чтобы каждый из моих локальных сетей мог просматривать локально размещенный сайт?
  • Я хочу разместить мой сайт из дома, но мой публичный IP просто загружает мой экран администратора DSL-модема? Как исправить?
  • Как правильно настроить мой веб-сервер в локальной сети?
  • Давайте будем гением компьютера.