Содержание

Установка PHP 7 в картинках и с подробным описанием

В предыдущих статьях мы писали о том, как создать локальный веб-сервер с помощью наборов инструментов Денвер и XAMPP. Эти инструменты позволяют превратить ваш домашний компьютер в веб-сервер и создавать сайты у себя дома. Рассмотренные приложения содержат в себе необходимый минимум программ, которые необходимы для работы в локальной среде разработки: сервер Apache, интерпретатор скриптов PHP, систему управления базами данных MySQL, интерпретатор языка Perl, и другие дополнительные библиотеки. Все эти компоненты вы можете установить и сами, главное знать, как это правильно сделать. И в сегодняшнем уроке мы рассмотрим установку интерпретатора PHP. Другими словами – мы установим PHP 7-й версии на свой компьютер. В качестве примера мы будем использовать операционную систему Windows 10.

 

 

Основные возможности PHP

Для начала рассмотрим то, что умеет PHP и для чего его можно использовать:

  • Создание скриптов, которые выполняются на стороне сервера. В качестве сервера может использоваться удаленный сервер (например, на хостинге), либо локальный веб-сервер (например, ваш домашний компьютер). Последний вариант особенно полезен в процессе разработки и тестирования сайтов. Чтобы видеть результат выполнения PHP-скриптов, вам нужен браузер, веб-сервер и сам PHP.
  • Создание скриптов, которые выполняются в командной строке. Этот вариант вам подойдет, если вам нужно запускать PHP-скрипт и видеть результат его обработки в командной строке (консоли). В этом случае вам не нужен веб-сервер и даже браузер. Главное, чтобы был установлен парсер PHP (программа, которая осуществляет разбор исходного кода языка программирования). Этот вариант используется довольно редко и мы не будем рассматривать его в данной статье.

 

 

 

Основные нововведения в PHP 7.х версиях:

  • Поддержка 64-разрядной Windows
  • Удаление устаревших функций и расширений
  • Анонимные классы (классы без имени, которые могут ускорить процесс кодирования, а также время выполнения)
  • Унифицированный синтаксис переменных
  • Синтаксис Unicode Codepoint Escape. Новый escape-символ (\u) дает возможность использовать код Unicode символа (в шестнадцатеричном виде) внутри строк.
  • Общий родительский класс при обработке исключений (\BaseException)
  • Декларация возвращаемого типа
  • Абстрактное дерево синтаксиса. Это расширение позволяет получать промежуточное представление кода во время компиляции.
  • Новый движок Zend Engine
  • Производительность + Экономия памяти. PHP 7 работает в два раза быстрее, чем PHP 5.6 и использует значительно меньше памяти.

 

 

Процесс установки PHP 7 на свой компьютер

Шаг №1 – Загрузка дистрибутива PHP

Скачайте дистрибутив PHP на официальном сайте https://windows.php.net/download/. Выберите нужную версию и скачайте ZIP-архив для типа сборки Thread-Safe (чтобы он был совместим с сервером Apache) и подходящей разрядности. Например, для этого урока мы скачали архив с последней версией PHP (7.2.12) – VC15 x64 Thread Safe.

 

После того, как закончится загрузка, распакуйте архив в любую папку, например, в C:\PHP7.

 

На этом этапе уже можно сказать, что вы установили интерпретатор PHP на свой компьютер. Теперь пришла пора проверить, что он работает нормально.

Мы создадим небольшой PHP-скрипт для проверки:

  • Создайте файл script_01.php
    в любой папке, например, в C:\PHP7\scripts\.
  • Откройте его любым текстовым редактором, например, Notepad++.
  • И добавьте в него небольшой кусок php-кода:
<?php echo "Проверка корректной работы PHP 7"; ?>

 

 

 

Шаг №2 – Проверка работы PHP

Теперь проверим, что эта новая программа (скрипт) запускается.

Для проверки будем использовать командную строку (консоль).

Из консоли нам нужно выбрать обработчик (в данном случае это файл php.exe в папке C:\PHP7\).

Проще всего сделать это в Windows 10 так: откройте File Explorer и перейдите в нужную папку:

 

Затем в строке пути к папке наберите слово

cmd и нажмите Enter:

 

Откроется командная строка (консоль; CLI).

Теперь нужно выбрать обработчик и скрипт для обработки, — для этого наберите следующую команду в консоли:

php.exe  C:\PHP7\scripts\script_01.php

 

  • php.exe – это обработчик. Поскольку мы запустили консоль из папки с этим файлом, путь к нему мы опустили. Если вы запускаете обработчик из другой папки, тогда указывайте полный путь к нему, например, в формате C:\PHP7\php.exe.
  • Через пробел мы указываем скрипт для обработки (абсолютный путь к файлу скрипта) – C:\PHP7\scripts\script_01.php. Если у вас другой путь – замените его здесь.

 

 

После того, как вы нажмете Enter, должна выполниться команда, и вы должны увидеть результат выполнения скрипта:

 

 

Если у вас возникают ошибки в консоли, скорее всего вы ошиблись в указании пути к файлам.

Если в названии папки есть пробелы, тогда заключайте путь в двойные кавычки.

В нашем примере обошлось без ошибок, и мы видим, что интерпретатор PHP успешно установлен и работает корректно. Теперь вы можете использовать PHP 7 из командной строки.

 

 

Использование встроенного в PHP сервера

Если вы хотите запускать PHP-скрипты из браузера, тогда вам нужно установить дополнительно веб-сервер (например, Apache). Правда, для простой проверки можно обойтись и без Апача, а использовать встроенный в дистрибутив PHP сервер. И сейчас мы вкратце расскажем вам, как это сделать.

Откройте в File Explorer папку с установленным PHP и наберите в пути слово cmd, а затем нажмите Enter.

 

После этого наберите команду, которая переведет PHP в режим сервера:

php.exe  -S localhost:6789

 

  • -S – эта часть команды обозначает, что PHP должен запуститься в режиме сервера
  • localhost – эта часть команды обозначает, что сервер должен принимать соединения только со своего компьютера
  • 6789 — это номер порта, на котором сервер будет ждать соединения от веб-браузера. При ошибке о занятости порта, используйте другой порт (от 1 до 65534)

 

 

После того как вы наберете команду и нажмете Enter, вы должны увидеть следующую информацию в консоли:

  • Версию запущенного PHP и время запуска
  • Порт, который слушает сервер
  • Корневая папка сервера (в нашем примере это C:\PHP7\)
  • Чтобы завершить работу сервера, вы должны нажать в консоли Ctrl+C

 

 

 

Теперь вы можете открыть браузер и протестировать работу сервера и выполнение PHP-скриптов.

Напомним, что корневая папка сервера – это C:\PHP7\. Поэтому, чтобы протестировать наш «подопытный» скрипт, нам нужно в браузере набрать следующий адрес:

http://localhost:6789/scripts/script_01.php

 

Если вы используете другой порт, вы должны поменять его на свой. Также учитывайте корректность пути к скриптам (учитывайте корневую папку PHP-сервера).

Если все нормально, вы должны увидеть в браузере результат выполнения скрипта C:\PHP7\scripts\script_01.

php, а в консоли будет отображаться информация об использовании сервера.

 

 

После этого вы можете прекратить работу PHP сервера, для этого нажмите сочетание клавиш Ctrl+C в консоли.

 

 

 

Вот и все! Мы успешно установили и проверили работу PHP 7. Мы увидели, как можно работать с интерпретатором PHP в консоли, а также узнали, как легко использовать встроенный сервер в PHP для проверки работы PHP-скриптов в браузере.

Для более сложных задач вам может понадобиться веб-сервер Apache, инструмент для работы с базами данных MySQL и дополнительные библиотеки. Все эти компоненты вы можете установить сами (как и PHP в сегодняшнем уроке), либо же использовать готовые пакеты с необходимыми инструментами, такие как XAMPP, Wampserver и другие (Денвер не поддерживает PHP 7).

В последующих уроках мы постараемся подробно осветить процесс установки дополнительных компонентов.

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

 

 



 

Установка PHP на локальный компьютер для Windows 7

Вступление

Продолжаем собирать локальный сервер WAMP на локальной машине (персональном компьютере). В этой статье устанавливаем интерпретатор PHP, он же буква [P] в акрониме WAMP.

Напомню сборка Apache+MySQL+PHP необходима для работы по созданию сайта на своём компьютере, как локальном сервере. Задача многим интересная и часто используемая для работы над проектами. Самостоятельная сборка AMP – задача сложная, связанная с настройкой компьютера и его постоянной исправностью. Для многих это проще, чем работать с удалёнными серверами, ведь компьютерная помощь всегда под рукой. Кроме этого работа с локальным сервером бесплатна.

В прошлых статьях я рассказывал, как установить MySQL, как установить веб-сервер HTTP Apache. Локальный сервер собираем под управлением Windows 7. Пришло время установить PHP.

Устанавливать PHP будем в папку php созданную на системном диске: C:\Program Files\PHP.

Где взять PHP

Последнюю версию php берем только на официальном сайте, вот ссылка: https://php.net/downloads.php. еще одна: https://windows.php.net/download#php-7.0. Последнюю версию php7.0 брать не будем, возьмем не такую «революционную» PHP 5.6 (5.6.20). Я беру сборку под 32 битную архитектуру Windows 7 с встроенным инсталлятором Windows.

Установка PHP с инсталлятором (MSI)

Последний PHP с инсталлятором и главное с модулем Apache 2.2. это  php-5.3.10-nts-Win32-VC9-x86.msi. Берем его тут: https://windows.php.net/downloads/releases/archives/ его и поставим.

Примечание: Выбираем с модулем Apache 2.2., так как мы собираем WAMP на Apache 2.2, который мы уже установили.

Установка PHP при помощи инсталлятора (MSI) простая, в несколько окон:

1. Запускаем скаченный файл php-5.3.10-nts-Win32-VC9-x86.msi.

Первое окно установки php-5. 3.10

2. Знакомимся с лицензией и согласившись с ней, идем дальше, нажимая кнопку «Next».

3. На этой странице задаем папку, в которую ставим PHP. Пусть это будет каталог: [C:\Program files\PHP]

4. На следующей странице, выбираем используемый веб-сервер. В нашей сборке это Apache2.

5. На этой странице нужно выбрать модули PHP, которые нам будут нужны. Для подстраховки выбираем всё.

6. Жмем «Install»

Жмем Install для установки php-5.3.10Видим процесс окно установки php-5.3.10

Всё! Установка PHP на локальный компьютер завершена.

©www.wordpress-abc.ru

Другие статьи раздела: Локальный сервер

Похожие посты:

Похожее

Установка Apache и PHP7 на Windows

Данная инструкция служит дополнением к инструкции по установке Apache 2.4VC11 и PHP 5.6 и описывает лишь отличительные моменты, которые касаются установки Apache24 и PHP7 на Windows. Описание установки СУБД MySQL остается прежним и не повторяется в этой инструкции.

Прежде чем продолжить чтение, обратите внимание на то, действительно ли вам необходимо устанавливать и настраивать всё это под Windows?Может быть Вам стоит обратить внимание на быстрый способ развернуть более качественное окружение для разработки под Windows, основанное на виртуализации Vagrant и не тратить свое время и нервы на настройку того же самого напрямую в Windows? В любом случае, прочтите статью про Vagrant. Возможно она сэкономит вам не только время, но и здоровье.

Данная инструкция рассчитана на разработчиков с базовыми знаниями Apache и PHP. В данной инструкции будут описана только разница в установке Apache и PHP с основной инструкцией по установке PHP 5.6. Если Вы не в курсе, что такое WEB-сервер, http-протокол и интерпретатор PHP, то Вы всегда можете узнать об этом более подробно, прочитав документацию.

Я не буду отвечать в комментариях на вопросы, ответ на которые есть в этой или основной инструкциях, ссылка на основную инструкцию указана в первом абзаце, а так же на вопросы, которые касаются понимания работы Apache и PHP и уж тем более на вопросы по ошибкам в разработке. Для этого существуют соответствующие ресурсы, литература, форумы, курсы. Однако, Вы всегда можете задать любой интересующий Вас вопрос. Возможно, кто-то из сообщества сможет Вам помочь.

Итак, поехали!

Установка Apache 2.4 VC14

  1. Загружаем Apache 2.4 binaries VC14 под свою систему по ссылке http://www.apachelounge.com/download/ Качаем 64 разрядную версию сервера. На момент написания этих строк файл назывался так: httpd-2.4.17-win64-VC14.zip
  2. Если нужны какие-то дополнительные модули, их можно загрузить там же (для базовой установки нет необходимости)
  3. Загружаем и устанавливаем обновления Visual C++ Redistributable for Visual Studio 2015 с сайта Microsoft.
  4. Разархивируем содержимое папки Apache24 из скаченного архива в D:\USR\apache. Обратите внимание, что в D:\USR\apache нужно положить не папку Apache24 из архива, а ее содержимое. Инсталлировать ничего не требуется.
  5. В файле D:\USR\apache\conf\httpd. conf изменяем значение ServerRoot на «d:/USR/apache» (строка 37) и значение DocumentRootDirectory) на «d:/USR/www» (строки 243 и 244). Так же следует раскомментировать строку 219 и изменить ее на: ServerName localhost:80
  6. Изменяем параметры хранения логов в том же файле (находим параметры и изменяем):
    ErrorLog "D:/USR/log/apache-error.log"
    CustomLog "D:/USR/log/apache-access.log" common
  7. Устанавливаем сервис Apache. Открываем командную строку от имени Администратора и вставляем туда следующую строку:
    D:\USR\apache\bin\httpd.exe -k install
  8. Следим за сообщениями об ошибках во время установки сервиса. Если все сделано верно, никаких ошибок быть не должно. Если у вас после выполнения строки не появилась снова командная строка, то вы что-то сделали неправильно. Просто воспользуйтесь функциями скопировать и вставить, чтобы не допускать ошибок при перепечатке.
  9. Создаем на рабочем столе ярлык для D:\USR\apache\bin\ApacheMonitor.exe и/или помещаем его в автозагрузку (для открытия окна автозагрузки в WIN8..10 необходимо нажать WIN+R, затем ввести shell:Startup и нажать ОК)
  10. Запускаем ApacheMonitor. В системном трее появится ярлык. Нажимаем на него левой кнопкой, выбираем Apache24 -> Start.
  11. В браузере заходим на http://localhost/ — должны увидеть It works!
  12. Если не увидели такой надписи, разбираемся, что пошло не так (читаем логи, гуглим, пытаемся самостоятельно разобраться с проблемой, раз уж решили разбираться в тонкостях работы веб-сервера)

Установка PHP 7

  1. Загружаем последнюю версию VC14 x64 Thread Safe по ссылке http://windows.php.net/download/. Обратите внимание, что нужен именно VC14 и именно Thread Safe. Файл, который Вам нужен, скорее всего будет называться наподобие: php-7.0.0-Win32-VC14-x64.zip
  2. Извлекаем содержимое архива в D:\USR\php. Как в случае с Apache, инсталлировать ничего не требуется.
  3. В файл D:\USR\apache\conf\httpd.conf добавляем строки:
    LoadModule php7_module "d:/USR/php/php7apache2_4.dll"
    AddHandler application/x-httpd-php .php
    # Путь к файлу php.ini
    PHPIniDir "D:/USR/php"
  4. И изменяем значение параметра DirectoryIndex на index.html index.php (строка 278)
  5. Используя ApacheMonitor перезапускаем Apache (Apache24 -> Restart)
  6. Заходим браузером http://localhost/index.php и убеждаемся, что PHP работает (обратитесь к первоначальной статье, чтобы узнать, откуда берется файл index.php) — в браузере будет вывод PhpInfo.
  7. Делаем копию шаблона конфигурационного файла D:\USR\php\php.ini-development с именем D:\USR\php\php.ini — это конфигурационный файл для РНР.
  8. Редактируем конфигурационный файл D:\USR\php\php.ini. Пользуясь поиском находим внутри файла, раскомментируем и изменяем параметры. Обратите внимание, что параметр extension определяет набор расширений РНР. Раскомментируйте те расширения, которые нужны Вам. В примере расширения, которые были нужны мне. Временную зону указывайте свою, а не мою:
    extension_dir = "D:/USR/php/ext"
    sys_temp_dir = "D:/USR/tmp"
    extension=php_curl.dll
    extension=php_gd2.dll
    extension=php_gettext.dll
    extension=php_mbstring.dll
    extension=php_mysqli.dll
    extension=php_openssl.dll
    date.timezone = Europe/Zaporozhye

    Если у Вас возникли проблемы с запуском curl, обратитесь к этой инструкции.

  9. Выполняем в командной строке php -m чтобы просмотреть список подключенных расширений.
  10. Перезапускаем Apache используя ApacheMonitor

Установка и настройка всего остального не изменилась. Обратитесь пожалуйста к статье по установке PHP 5.6 для получения подробной информации.

PHP | Установка

Установка PHP

Последнее обновление: 26.02.2021

Есть разные способы установки всего необходимого программного обеспечения. Мы можем устанавливать компоненты по отдельности, а можем использовать уже готовые сборки на подобие Denwer или EasyPHP. В подобных сборках компоненты уже имеют начальную настройку и уже готовы для создания сайтов. Однако рано или поздно разработчикам все равно приходится прибегать к установке и конфигурации отдельных компонентов, подключения других модулей. Поэтому мы будем устанавливать все компоненты по отдельности. В качестве операционной системы будет использоваться Windows.

Что подразумевает установка PHP? Во-первых, нам нужен интерпретатор PHP. Во-вторых, необходим веб-сервер, например, Apache, с помощью которого мы сможем обращаться к ресурсам создаваемого нами сайта.

Для установки PHP перейдем на офсайт разработчиков https://www.php.net/downloads. На странице загрузок мы можем найти различные дистрибутивы для операционной системы Linux. Если нашей операционной системой является Windows, то нам надо загрузить один из пакетов со страницы https://windows. php.net/download.

Загрузим zip-пакет последнего выпуска PHP:

Интерпретатор PHP имеет две версии: Non Thread Safe и Thread Safe. В чем разниц между ними? Версия Thread Safe позволяет задействовать многопоточность, тогда как Non Thread Safe — однопоточная версия. Выбрем версию Thread Safe.

Распакуем загруженный архив в папку, которую назовем php. Пусть эта папка у нас будет располагаться в корне диска C.

Теперь нам надо выполнить минимальную конфигурацию PHP. Для этого зайдем в распакованный архив и найдем там файл php.ini-development.

Это файл начальной конфигурации интерпретатора. Переименуем этот файл в php.ini и затем откроем его в текстовом редакторе.

Найдем в файле строку:

;extension_dir = "ext"

Эта строка указывает на каталог с подключаемыми расширениями для PHP. Расширения позволяют задействовать нам некоторую дополнительную функциональность, например, работу с базой данных. Раскомментируем эту строку, убрав точку с запятой:

extension_dir = "ext"

Так как все расширения находятся в распакованном каталоге ext.

Поскольку мы будем использовать базы данных MySQL, то нам надо указать расширение в php.ini. По умолчанию оно уже имеется в файле, только оно закомментировано:

;extension=mysqli

Раскомментируем его, убрав знак точки с запятой:

extension=mysqli

Теперь по умолчанию эта библиотека будет использоваться при работе с базой данных. Также мы можем при необходимости раскомментировать и другие расширения. Но для начала нам хватит и одного.

Остальное содержимое файла оставим без изменений.

Теперь установим веб-сервер.

Как установить и настроить PHP 5 для запуска с Apache на Windows

В этой статье приводится пошаговое руководство по установке PHP для совместной работы с HTTP-сервером Apache на Windows. Эта процедура была протестирована как на Windows XP и Vista. Предполагается, что вы уже завершили установку Apache.

Прежде чем приступать к работе, скачайте копию PHP 5 со страницы загрузки. Загрузите защищенный пакет VC6 из раздела «Windows Binaries» — то есть не скачивайте установщик. Например, выберите пакет с пометкой «PHP 5.2.5 zip package», если на данный момент текущая версия — 5.2.5.

Примечание: обратите внимание, что я не тестировал описанную ниже процедуру с версиями PHP 5.3, только с 5.2.5, которая была последней версией на момент написания статьи. Теоретически, те же действия должны выполняться и для установки PHP 7.

Создайте на жестком диске папку для PHP. Я предлагаю c:php, хотя вы можете использовать другое название и расположение папки. Лично я предпочитаю не использовать имена с пробелами.

Извлеките все файлы из загруженного архива в эту папку. Для этого просто дважды кликните по zip-файлу. А затем перетащите все файлы в папку c:php.

Если вы переходите на PHP 5 с более старой версии, перейдите в каталог Windows, (обычно это c:windows), и удалите все файлы php. ini, которые вы ранее там размещали.

Перейдите в папку c:php и создайте копию файла php.ini-recommended. Назовите новый файл php.ini. Теперь у вас должен быть файл c:phpphp.in с содержимым, идентичным файлу c:phpphp.ini-recommended.

Примечание. Если вы используете Apache 1 нужно либо перенести файл php.ini в каталог Windows (c:windows), либо настроить переменную среды PATH, чтобы включить в нее c:php. Если вы не знаете, как это сделать, просто переместите файл php.ini в папку c:windows. Не нужно этого делать, если используете Apache 2, так как позже мы укажем в файле конфигурации Apache 2 директиву с расположением файла php.ini.

Для установки PHP на Windows 7 c помощью текстового редактора (например, такого как «Блокнот», который можно найти в разделе «Служебные» меню «Пуск»)? откройте файл php.ini. Возможно, придется внести следующие изменения в файл:

а) Включение коротких открывающих тегов

Найдите следующую строку:

Если для short_open_tag задано значение off, теги типа «<?» не будут считаться открывающими тегами для PHP-кода. В таком случае, чтобы начать PHP-скрипт, нужно будет скомпоновать скрипт с открывающим тегом типа «<?php».

Поскольку многие сторонние PHP-скрипты используют формат «<?», установка для этого параметра значения off создаст больше проблем, чем принесет пользы. Особенно, если учесть тот факт, что большинство, коммерческих хостингов, поддерживающих PHP, без проблем обрабатывают скрипты, использующие «< ?», в качестве открывающего тега. Чтобы изменить эту установку, отредактируйте данную строку следующим образом:

b) Волшебные кавычки

При установке Apache PHP по умолчанию входящие данные автоматически не экранируются с помощью слэша. Если вы хотите, чтобы входные данные имели префикс обратной косой черты («»), например, чтобы воспроизводить настройки хостинга, найдите следующую строку:

и замените ее на:

Не рекомендуется делать это, если на хостинге не задан данный параметр. Даже при установленном значении Off вы все равно можете использовать в PHP функцию addslashes(), чтобы добавлять слэши для конкретных частей данных,.

c) Использование глобальных переменных

Ряд старых скриптов при выполнении исходят из того, что все данные, отправляемые через форму, будут автоматически иметь переменную PHP с тем же именем. Например, если в форме есть поле для ввода с именем «something«, старые скрипты PHP исходят из того, что PHP-процессор автоматически создаст переменную с именем $something, которая содержит значение, заданное через это поле.

Если вы используете такие скрипты, нужно найти следующую строку:

и изменить ее на:

Предупреждение: при установке PHP на Windows не делайте этого, если у вас нет сторонних скриптов, для работы которых это необходимо. При написании новых скриптов лучше всегда исходить из того, что для элемента register_globals установлено значение «Off«.

d) Отображение ошибок

На «живом» сайте ошибки в скрипте обычно регистрируются без отображения в файле ошибок PHP. Но на локальной машине, пока вы тестируете и отлаживаете PHP-скрипт более удобно отправлять сообщения об ошибках при их выявлении прямо в окно браузера. Так вы не пропустите ошибки, даже если забудете проверить файл журнала ошибок.

Чтобы PHP отображал сообщения об ошибках прямо в окне браузера, найдите следующую строку:

и измените ее на:

Для этого параметра на работающем сайте всегда должно быть установлено значение Off.

e) Путь сессии

Если скрипт использует сессии, найдите следующую строку:

;session.save_path = "/tmp"

session.save_path задает папку, в которой PHP сохраняет файлы сессии. Поскольку папка /tmp в Windows не существует, то нужно установить другую папку. Один из способов — создать папку с именем c:tmp (как ранее мы создали c:php) и указать для этого параметра данную папку. Если сделаете это, измените данную строку следующим образом:

session.save_path = "c:tmp"

Обратите внимание, что в дополнение к изменению пути я также удалил из строки префикс точки с запятой («;»).

Также можно использовать текущую папку TEMP на своем компьютере. Или создайте папку tmp в каталоге PHP, например c:phptmp и соответствующим образом настройте файл конфигурации. Возможных вариантов может быть много. Если вы не можете решить, какой из них выбрать, просто создайте c:php и сделайте, как я сказал выше.

f) Сервер SMTP

При установке PHP 5 5 если скрипт использует функцию mail(), и нужно, чтобы функция успешно отправляла почту на локальном компьютере, найдите следующий раздел:

[mail function]
; For Win32 only.
SMTP = localhost
smtp_port = 25

; For Win32 only.
;sendmail_from = [email protected]

Измените его, указав адрес вашего SMTP-сервера и учетную запись электронной почты. Например, если ваш SMTP-сервер mail.example.com, а адрес электронной почты [email protected], измените код так:

[mail function]
SMTP = mail.example.com
smtp_port = 25
sendmail_from = [email protected]

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

Существует два способа установки Apache PHP. Первый: настроить его на загрузку PHP-интерпретатора в качестве модуля Apache. Второй: настроить его для запуска интерпретатора как бинарного CGI. Нужно применять только один из них. Выберите метод модуля, если на хостинге PHP также установлен, как модуль Apache, или используйте метод CGI, если он реализован на хостинге.

a) Запуск PHP 5 в качестве модуля Apache

Чтобы настроить Apache для загрузки PHP в качестве модуля для анализа PHP-скриптов, используйте текстовый редактор ASCII, чтобы открыть файл конфигурации Apache, httpd.conf.

Если вы используете Apache 1.x, файл находится в папке c:Program FilesApache GroupApacheconf. Пользователи Apache 2.0.x могут найти его в папке C:Program FilesApache GroupApache2conf, а пользователи Apache 2.2.x — в папке C:Program FilesApache Software FoundationApache2.2conf. Как правило, он находится в папке conf каталога, где установлен Apache.

Найдите раздел файла с операторами LoadModule. Объявления, перед которыми стоит символ хэша «#», считаются закомментированными.

Если используете Apache 1.x, добавьте следующую строку после всех операторов LoadModule:

LoadModule php5_module "c:/php/php5apache.dll"

Если вы используете Apache 2.0.x, добавьте следующую строку после всех операторов LoadModule:

LoadModule php5_module "c:/php/php5apache2.dll"

Если вы используете Apache 2.2.x, добавьте следующую строку:

LoadModule php5_module "c:/php/php5apache2_2.dll"

Обратите внимание, что в этом примере установки PHP используется символ прямой косой черты («/») вместо традиционной обратной косой черты Windows («»). Это не опечатка.

Если вы используете Apache 1.x, найдите серию операторов «AddModule» и добавьте после всех строк следующую.

Затем найдите в файле блок AddType и добавьте приведенную ниже строку после последнего оператора AddType. Это нужно сделать независимо от того, какую версию Apache вы используете. Для Apache 2. 2.x нужно найти строки AddType в разделе <IfModule mime_module>. Добавьте строку непосредственно перед закрытием </ IfModule> для этого раздела.

AddType application/x-httpd-php .php

Если необходима поддержка других типов файлов, например «.phtml», добавьте их в список, например, так:

AddType application/x-httpd-php .phtml

Тем, кто использует одну из версий Apache 2, нужно указать местоположение ini-файла PHP. Добавьте следующую строку в конец httpd.conf.

Если вы использовали другой каталог, нужно будет изменить c:/php на правильный путь. Не забудьте применить косую черту («/»).

Если используете Apache 1, вы уже разместили файл php.ini в папке Windows или где-нибудь в PATH. Поэтому PHP должен будет найти его самостоятельно.

Если вы настроили для PHP 5 загрузку в качестве модуля Apache, можете пропустить данный раздел. Он предназначен для тех, кто хочет настроить для PHP запуск в качестве бинарного CGI.

Процедура для этого при установке PHP 7 одинаковая как для Apache 1. x, так и для всех версий серии 2.x.

Найдите часть конфигурационного файла Apache, в которой находится раздел ScriptAlias. Добавьте приведенную ниже строку сразу после строки ScriptAlias для «cgi-bin». Если используете Apache 2.2.x, убедитесь, что строка расположена до закрытия </ IfModule> для раздела <IfModule alias_module>.

Обратите внимание: если вы установили PHP в другом месте, например c:Program Filesphp, нужно указать соответствующий путь вместо c:/php/ (например, c:Program Filesphp). Не забудьте, что здесь мы используем простую косую черту («/») вместо обратной косой черты Windows («»).

ScriptAlias /php/ "c:/php/"

Apache нужно настроить MIME тип PHP. Найдите блок комментариев AddType, поясняющий его использование, и добавьте следующую строку ниже него. Для Apache 2.2.x найдите строки AddType в разделе <IfModule mime_module>. Добавьте приведенную ниже строку непосредственно перед закрытием </IfModule> для этого раздела.

AddType application/x-httpd-php . php

Как и в случае установки PHP в качестве модуля Apache, можно добавить любые расширения, чтобы Apache распознавал их как скрипты PHP, например:

AddType application/x-httpd-php .phtml

Затем вам нужно указать серверу выполнять исполняемый файл PHP каждый раз, когда он встречает скрипт PHP. Добавьте в файл следующий код, например, после блока комментариев, поясняющих «Action«.

Если вы используете Apache 2.2.x, то добавьте код сразу после инструкции AddType, описанной выше; в Apache 2.2.x нет блока комментариев «Action«.

Action application/x-httpd-php "/php/php-cgi.exe"

Примечание: часть «/php/» будет распознана как ScriptAlias, своего рода макрос, который будет расширен Apache до «c:/php/» (или «c:/Program Files/php/», если вы установили PHP там). Другими словами, не помещайте в эту директиву путь «c:/php/php.exe» или «c:/Program Files/php/php.exe», а используйте «/php/php-cgi.exe».

Если используете Apache 2.2.x, найдите следующий раздел в файле httpd. conf:

<Directory "C:/Program Files/Apache Software Foundation/Apache2.2/cgi-bin">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

Добавьте приведенные ниже строки сразу после раздела, который только что нашли.

<Directory "C:/php">
AllowOverride None
Options None
Order allow,deny
Allow from all
</Directory>

c) Настройка индексной страницы по умолчанию

Этот раздел относится к варианту установки PHP на Windows в качестве модуля Apache, так и двоичного CGI.

Если вы создаете файл index.php и хотите, чтобы Apache загружал его как главную страницу сайта, придется добавить еще одну строку в файл httpd.conf. Найдите строку, которая начинается с «DirectoryIndex», и добавьте «index.php» в список файлов. Например, если у вас был такой код:

DirectoryIndex index.html

измените его на:

DirectoryIndex index.php index.html

При следующем входе на веб-сервер через имя каталога, например «localhost» или «localhost/directory/», Apache отправит все скрипты из index. php или содержимое файла index.html, если index.php недоступен.

Перезагрузите сервер Apache. Это необходимо, чтобы Apache считал новые директивы конфигурации PHP, которые вы поместили в файл httpd.conf. Сервер Apache 2.2 можно перезапустить, дважды кликнув по иконке Apache Service Monitor в панели задач и нажав в появившемся окне кнопку «Перезапустить».

После установки PHP 5 5 или другой версии языка создайте php-файл со следующей строкой:

Сохраните в каталог Apache htdocs файл с именем test.php. Если используете «Блокнот», не забудьте сохранить имя «test.php» с кавычками. Иначе программа самостоятельно добавит расширение .txt.

Откройте данный файл в браузере, введя в адресную строку «localhost / test.php» (без кавычек). Не открывайте файл напрямую через проводник — вы увидите только код, введенный ранее. Вам нужно использовать указанный выше URL-адрес, чтобы браузер попытался получить доступ к веб-серверу Apache, который запускает PHP для интерпретации скрипта.

Если все пройдет успешно, вы увидите страницу с информацией о настройке PHP. Поздравляю — вы успешно установили PHP и настроили Apache для работы с ним. Вы можете загрузить этот же файл test.php на свой хостинг и запустить его там, чтобы узнать, как хостинг настроил PHP у себя, и попытаться воспроизвести эти настройки на своей машине.

Если это не сработает, проверьте, не выдает ли установка PHP или установка Apache ошибок. Для этого откройте окно командной строки и запустите php-cgi.exe для файла test.php, например, c:phpphp-cgi test.php.

Если вы вызвали PHP из командной строки и увидели большой HTML-файл со всей информацией о конфигурации PHP, значит, PHP настроен правильно. Вероятно, проблема связана с конфигурацией Apache. Убедитесь, что вы перезапустили Apache после внесения изменений в конфигурацию и что вы правильно настроили веб-сервер.

Полное справочное руководство по установке PHP можно найти на официальном сайте технологии. Его можно посмотреть онлайн или загрузить для изучения в автономном режиме.

Хорошего всем дня!

Данная публикация является переводом статьи «How to Install and Configure PHP 5 to Run with Apache on Windows» , подготовленная редакцией проекта.

Установка сервера Apache + PHP на Windows 7

В первой статье мы рассмотрели как установить Apache на Windows7. Теперь рассмотрим как подключить к нашему серверу язык php.

Установка PHP

1) Качаем zip архив с php с сайта http://windows.php.net/download/ . Я выбрал Thread Safe — php-5.3.5-Win32-VC6-x86.

2) Разархивируем php в папку c:/php-5.3.5/

3) Подключаем php к Apache. Открываем файл httpd.conf . Он находится в папке conf в месте куда у вас установился Apache. У меня это C:Program Files (x86)Apache Software FoundationApache2.2conf .

Для подключения php, в качестве модуля, необходимо добавить всего 3 инструкции в файл httpd.conf:

{codecitation}
LoadModule php5_module c:/php-5.3.5/php5apache2_2.dll
AddType application/x-httpd-php phtml php
PHPIniDir «c:/php-5.3.5/»
{/codecitation}

Эти строки следует поместить в примерно в середину файла httpd.conf, например, сразу после директив LoadModule. У меня они заканчиваются на 128 строке файла. Конкретное расположение этих директив не имеет принципиального значения, однако нельзя помещать их в начале, а также и в самом конце файла httpd.conf.

Примечание.

  • Первая строка загружает модуль PHP, реализованный в библиотеке php5apache2_2.dll
  • Вторая строка устанавливает соответствие между файлами с расширением php и mime-типом application/x-httpd-php, который обрабатывается модулем PHP.
  • Третья строка позволяет явно указать расположением конфигурационного файла php.ini.

4) Создание конфигурационного файла в php. В директории c:/php-5.3.5 находятся несколько шаблонов конфигурационных файлов. В качестве основы возьмем файл c:/php-5.3.5/php.ini-production и переименуем его в php.ini. Таким образом, конфигурационный файл PHP (php.ini) будет располагаться в директории c:/php-5.3.5 и именно в него должны вносится все изменения конфигурации PHP.

После внесения изменений в httpd.conf и создания файла php.ini перезагрузите Apache.

5) Проверка. В папке C:Program Files (x86)Apache Software FoundationApache2.2htdocs создайте файл index.php с кодом:

{codecitation}
<?php phpinfo()?>
{/codecitation}

Теперь зайдите в браузере по адресу http://localhost/index.php . Если все сделано правильно — вы увидите фиолетовую таблицу с настройками php.

Дополнительные настройки php

Включите поддержку короткой записи php, в php.ini найдите функцию short_open_tag, и включите её: short_open_tag = On

В php.ini укажите путь к расширениям php, для этого раскоментируйте и заполните строку extension_dir. Вот как она выглядит у меня:

{codecitation}
extension_dir = «c:/php-5.3.5/ext»
{/codecitation}

Также рекомендую раскомментировать строку:

{codecitation}
extension=php_mbstring.dll
{/codecitation}

и строку extension=php_mysqli.dll для рботы с MySql базами данных:

{codecitation}
extension=php_mysqli. dll
{/codecitation}

Не могу установить php на Apache и Windows 7 64



Я установил Apache, добавил

LoadModule php5_module c:/php/php5apache2_4.dll
AddHandler application/x-httpd-php .php
PHPIniDir "c:\php"

для файла httpd установите файл php.ini (im using thread safe 5.5.10 x64 version), но когда я пытаюсь запустить apache, то получаю сообщение «the requested operation has failed».

php apache
Поделиться Источник Czulu     24 марта 2014 в 16:59

2 ответа


  • Xdebug с PHP 5.2 на 64-bit Windows 7?

    Я хотел бы установить Xdebug ( http://xdebug.org/ ) на мою машину 64 bit Windows 7 для отладки кода Drupal, работающего на PHP 5.2. Страница загрузки Xdebug не предоставляет загрузки для версии 64 bit, совместимой с PHP 5.2. Многие модули Drupal не совместимы с PHP 5. 3, поэтому переход на более…

  • Как заставить PHP 64 Bit работать и включаться на 64 Bit Apache в Windows 7 64?

    Я установил PHP 5.5 64 Bit, а также Apache 2.4 64Bit на мой Windows 7 64 bit PC, бит MAX_INT все еще отображает 32-битное число (2147483647). Весь смысл того, что я делал эти установки, состоял в том, чтобы увеличить MAX_INT. Кажется, я не могу найти никакой информации по этому поводу, поэтому…



0

Как предположил пользователь ChrisForrence, я пытался запустить несовместимые версии apache и php. Наконец, я смог найти подробный учебник по youtube здесь https://www.youtube.com/watch?v=17qhikHv5hY, который научил меня устанавливать apache и php (есть еще один фильм того же пользователя о последнем).

Поделиться Czulu     02 апреля 2014 в 14:50



0

Попробовать это:

  1. Использовать прямые слеши
  2. Заключите путь к dll в кавычки
  3. Дважды проверьте пути и имена каталогов

    LoadModule php5_module "C:/php/php5apache2_4. dll"
    AddHandler application/x-httpd-php .php
    PHPIniDir "C:/php"
    

Поделиться WinterMute     24 марта 2014 в 17:06


Похожие вопросы:


Какие конфигурации PHP, Xdebug и Eclipse работают на Windows 7 64 bit?

Я уже несколько дней валяю дурака, пытаясь найти правильную комбинацию, которая позволит мне отлаживать с точками останова и просмотром переменных в Eclipse без сбоя Apache. PHP 5.3? PHP 5.2?…


PHP и CURL под Windows 7 64 битами и Apache

Я пытаюсь использовать curl с PHP на моем ящике без какого-либо успеха. Мой Конфиг : OS: win 7 64 бит, PHP : 5.3.1, Apache : 2.2.14 Я смог использовать расширение mysql, так что конфигурация моего…


Как я могу установить eclipse на Windows 7 64-bit?

Кто-нибудь может помочь мне установить eclipse для windows 7 64 bit? У меня есть eclipse 64 bit и jdk 64 bit, но это не работает?


Xdebug с PHP 5. 2 на 64-bit Windows 7?

Я хотел бы установить Xdebug ( http://xdebug.org/ ) на мою машину 64 bit Windows 7 для отладки кода Drupal, работающего на PHP 5.2. Страница загрузки Xdebug не предоставляет загрузки для версии 64…


Как заставить PHP 64 Bit работать и включаться на 64 Bit Apache в Windows 7 64?

Я установил PHP 5.5 64 Bit, а также Apache 2.4 64Bit на мой Windows 7 64 bit PC, бит MAX_INT все еще отображает 32-битное число (2147483647). Весь смысл того, что я делал эти установки, состоял в…


php pdo_informix на windows 7 64 bit и wamp 64 bit

Я пытаюсь установить pdo_informix в WAMP 64 bit на windows 7 64 bit, но я нашел проблему, потому что pdo_informix.dll-это версия 32 бит. Я пытаюсь найти pdo_informix.dll, но не могу его найти. Как…


Настройка Apache на Windows 7

Я хочу протестировать некоторый код на localhost перед загрузкой на живой сайт. Поэтому я решил установить Apache. Я использую 64-битную версию windows 7 enterprise edition. Я скачал…


Как установить расширение Imagick/imagemagick PHP на windows 7

Как установить image magic в Windows 7. Я следовал этим инструкциям Чтобы установить IMagick на Windows XP (php 5.2.x) скачать и установить ImageMagick-6.5.8-7 Q16-windows-dll.exe http:/ /…


Установка Apache Spark на windows 7 64 bit

Есть ли более простой способ установить Apache spark на windows 7 64 bit локально?


Bugzilla установить на Windows 7 с Apache и Mysql

Окружающая среда: Windows 7 про 64 bit. Apache 2.2.25 ActivePerl 5.18.2 Build 1802 (64 bit) Bugzilla 4.4.5 (извлечено) Хорошо, я следовал инструкциям step-by-step, как указано здесь:…

Как установить MySQL — SitePoint

Практически все веб-приложения требуют хранилища данных на сервере, и MySQL продолжает оставаться наиболее часто используемым решением для баз данных. В этой статье обсуждаются различные варианты использования MySQL в вашей локальной системе во время разработки.

MySQL — это бесплатная реляционная база данных с открытым исходным кодом. MariaDB — это ответвление базы данных, созданной в 2010 году после опасений по поводу приобретения MySQL Oracle. (Функционально он идентичен, поэтому большинство концепций, описанных в этой статье, также применимы к MariaDB.)

Хотя в последние годы количество баз данных NoSQL резко возросло, реляционные данные обычно более практичны для большинства приложений. Тем не менее, MySQL также поддерживает структуры данных, подобные NoSQL, такие как поля JSON, поэтому вы можете пользоваться преимуществами обоих миров.

В следующих разделах рассматриваются три основных способа использования MySQL в вашей локальной среде разработки:

  1. облачные решения
  2. с использованием контейнеров Docker
  3. устанавливается на ваш компьютер.

Эта популярная статья была обновлена ​​в 2020 году, чтобы точно отразить текущий процесс установки MySQL. Чтобы узнать больше о MySQL, прочтите Jump Start MySQL.

Облачный MySQL

Сервисы

MySQL предлагаются AWS, Azure, Google Cloud, Oracle и многими другими специализированными службами хостинга. Даже недорогие общие хосты предлагают MySQL с удаленными HTTPS или туннелированными SSH-соединениями. Таким образом, вы можете использовать базу данных MySQL удаленно при локальной разработке. Преимущества:

  • нет программного обеспечения базы данных для установки или управления
  • ваша производственная среда может использовать ту же систему
  • более одного разработчика могут легко получить доступ к одним и тем же данным
  • он идеально подходит для тех, кто использует облачные IDE или устройства с более низкими характеристиками, такие как Chromebook
  • . Могут быть включены такие функции
  • , как автоматическое масштабирование, репликация, сегментирование и резервное копирование.

Минусы:

  • настройка все еще может занять много времени
  • библиотеки соединений и процессы могут незначительно отличаться на разных хостах
  • экспериментирование более рискованно; любой разработчик может случайно стереть или изменить базу данных
  • Разработка
  • прекратится, когда у вас нет подключения к Интернету
  • может потребоваться ошеломляющая стоимость использования.

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

Запуск MySQL с помощью Docker

Docker — это платформа, которая позволяет создавать, совместно использовать и запускать приложения в контейнерах . Подумайте о контейнере как об изолированной виртуальной машине с собственной операционной системой, библиотеками и файлами приложения. (На самом деле контейнеры — это легкие процессы, которые совместно используют ресурсы на хосте.)

Образ Docker — это снимок файловой системы, который можно запускать как контейнер. Docker Hub предоставляет широкий спектр образов для популярных приложений и баз данных, включая MySQL и MariaDB.Преимущества:

  • Все разработчики могут использовать один и тот же образ Docker в macOS, Linux и Windows
  • Минимальная установка и обслуживание MySQL
  • тот же базовый образ может использоваться в средах разработки и производства
  • разработчиков сохраняют преимущества локальной разработки и могут экспериментировать без риска.

Docker выходит за рамки этой статьи, но следует отметить ключевые моменты:

  • Docker — это клиент-серверное приложение.Сервер отвечает за управление изображениями и контейнерами и может управляться через REST API с помощью интерфейса командной строки. Таким образом, вы можете запустить демон сервера где угодно и подключиться к нему с другого компьютера.
  • Для каждой технологии, необходимой вашему веб-приложению, следует использовать отдельные контейнеры. Например, ваше приложение может использовать три контейнера: веб-сервер Apache с поддержкой PHP, базу данных MySQL и механизм Elasticsearch.
  • По умолчанию контейнеры не сохраняют состояние.Данные, сохраненные в файле или базе данных, будут потеряны при следующем перезапуске контейнера. Постоянство реализуется путем монтирования тома на хосте.
  • Каждый контейнер может связываться с другими в своей собственной изолированной сети. При необходимости хост-машине могут быть доступны определенные порты.
  • Доступна коммерческая корпоративная версия Docker. Эта статья относится к версии сообщества с открытым исходным кодом, но применимы те же методы.

Установить Docker

Инструкции по установке последней версии Docker на Linux доступны в Docker Docs.Вы также можете использовать официальные репозитории, хотя, скорее всего, в них есть более старые версии. Например, в Ubuntu:

  sudo apt-get update
sudo apt-get удалить docker docker-engine docker.io
sudo apt установить docker.io
sudo systemctl запустить докер
sudo systemctl включить докер
  
Установка

будет отличаться в других выпусках Linux, поэтому поищите соответствующие инструкции в Интернете.

Docker CE Desktop для macOS Sierra 10.12 и выше и Docker CE Desktop для Windows 10 Professional доступны как устанавливаемые пакеты.Вы должны зарегистрироваться в Docker Hub и войти в систему для загрузки.

Docker в Windows 10 использует платформу виртуализации Hyper-V, которую можно включить с помощью панели Включение и отключение функций Windows , доступ к которой осуществляется из программы Программы и компоненты на панели управления. Docker также может использовать подсистему Windows для Linux 2 (WSL2 — в настоящее время находится в стадии бета-тестирования).

Чтобы обеспечить доступ Docker к файловой системе Windows, выберите Settings из меню значка Docker на панели задач, перейдите на панель Shared Drives и проверьте, какие диски разрешено использовать серверу.

Убедитесь, что Docker успешно установлен, введя в командной строке docker version . При желании попробуйте docker run hello-world , чтобы убедиться, что Docker может извлекать образы и запускать контейнеры должным образом.

Запуск контейнера MySQL

Чтобы упростить взаимодействие контейнеров Docker, создайте мостовую сеть с именем dbnet или любым другим именем, которое вы предпочитаете (этот шаг можно пропустить, если вы просто хотите получить доступ к MySQL с хост-устройства) :

  docker network create --driver bridge dbnet
  

Теперь создайте папку data в вашей системе, где будут храниться таблицы MySQL, например mkdir data .

Самый последний сервер MySQL 8 теперь может быть запущен с:

  docker run -d --rm --name mysql --net dbnet -p 3306: 3306 -e MYSQL_ROOT_PASSWORD = mysecret -v $ PWD / data: / var / lib / mysql mysql: 8
  

Используемых аргументов:

  • -d запускает контейнер как фоновую службу.
  • --rm удаляет контейнер, когда он останавливается.
  • --name mysql присваивает контейнеру имя mysql для упрощения управления.
  • -p 3306: 3306 перенаправляет порт контейнера на хост. Если вы хотите использовать порт 3307 на хосте, вы должны указать -p 3307: 3306 .
  • -e определяет переменную среды, в этом случае пароль пользователя root MySQL по умолчанию установлен на mysecret .
  • -v монтирует том, поэтому папка данных MySQL / var / lib / mysql в контейнере будет храниться в подпапке data текущей папки на хосте.

$ PWD — текущая папка, но работает только в macOS и Linux. Пользователи Windows должны указать весь путь, используя запись с косой чертой, например / c / mysql / data .

При первом запуске этой команды MySQL будет запускаться через несколько минут, так как образ Docker загружен и контейнер MySQL настроен. Последующие перезапуски будут мгновенными, если вы не удалите или не измените исходное изображение. Вы можете проверить прогресс в любое время, используя:

  журналы докеров mysql
  

Использование инструмента командной строки контейнера MySQL

После запуска откройте оболочку bash в контейнере MySQL, используя:

  docker exec -it mysql bash
  

Затем подключитесь к серверу MySQL как пользователь root:

  mysql -u корень -pmysecret
  
За

-p следует пароль, установленный в аргументе Docker -e , показанном выше. Не добавляйте пробел!

Теперь можно использовать любые команды MySQL — например, show databases; , создать базу данных новую; и так далее.

Используйте клиент MySQL

Любое клиентское приложение MySQL может подключаться к серверу через порт 3306 хост-машины.

Если у вас не установлен клиент MySQL, Adminer — это легкий инструмент управления базой данных PHP, который также можно запускать как контейнер Docker!

  docker run -d --rm --name adminer --net dbnet -p 8080: 8080 администратор
  

После запуска откройте в браузере http: // localhost: 8080 и введите mysql в качестве имени сервера, root в качестве имени пользователя и mysecret в качестве пароля:

Базы данных, пользователей, таблицы и связанные с ними настройки теперь можно добавлять, редактировать или удалять.

Остановить контейнеры Docker

Контейнеры могут быть остановлены (и автоматически удалены) с помощью команды docker stop , за которой следует одно или несколько имен контейнера. Например:

  докер остановить администратор MySQL
  

Образы и контейнеры Docker легче по сравнению с виртуальными машинами, но вы можете стереть все данные, используя:

  docker system prune -a
докер объемная обрезка
  

Использование

docker-compose для управления контейнерами

docker-compose может управлять любым количеством контейнеров без необходимости вводить длинные команды Docker.Создайте файл docker-compose.yml в вашей текущей папке:

  версия: «3,7»

Сервисы:

  mysql:
    среда:
      - MYSQL_ROOT_PASSWORD = mysecret
    изображение: mysql: 8
    имя_контейнера: mysql
    объемы:
      - ./data:/var/lib/mysql
    сети:
      - dbnet
    порты:
      - «3306: 3306»

  администратор:
    изображение: администратор
    имя_контейнера: администратор
    зависит от:
      - MySQL
    сети:
      - dbnet
    порты:
      - «8080: 8080»

сети:
  dbnet:
  

Затем запустите:

  докер-компоновка
  

Контейнеры MySQL и Adminer запускаются с теми же конфигурациями, которые использовались выше. Нажмите Ctrl + C , чтобы остановить и удалить контейнеры.

Запустите MySQL на вашей ОС

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

Пакеты «все в одном»

Существует несколько отличных универсальных дистрибутивов macOS, Linux и Windows, которые содержат Apache, PHP, MySQL, phpAdmin, сертификаты SSL, фреймворки и другие приложения в одном установочном пакете.Варианты включают:

Большинство из них идеально подходят для быстрой настройки разработки PHP и MySQL и могут предлагать несколько редакций каждой службы. Однако:

  • Обновления не гарантируются. Многие пакеты по-прежнему предлагают более старые версии MySQL.
  • Разработчики, использующие разные ОС или настраивающие конфигурации, могут вносить проблемы совместимости в общие кодовые базы.
  • Среда разработки и производственная среда могут существенно отличаться.

Пакеты «все в одном» лучше всего подходят для проектов с одним программистом или для тех, кто плохо знаком с веб-разработкой.

Установить MySQL в Linux

Существует множество способов установить MySQL в различных дистрибутивах Linux:

  • Некоторые дистрибутивы, такие как Ubuntu Server, по умолчанию предоставляют MySQL.
  • Официальная документация предоставляет подробную информацию об установке с использованием менеджеров пакетов APT, Yum и SLES, а также пакетов RPM и Debian.
  • В магазине snap доступны разные версии MySQL.

Установить MySQL на macOS

MySQL можно установить на macOS 10.13 и выше, загрузив образ диска .dmg с установщиком собственного пакета. Дважды щелкните, чтобы смонтировать образ, затем дважды щелкните файл .pkg , чтобы запустить мастер установки.

Если вы решили не запускать MySQL автоматически, его можно запустить с помощью значка на панели системных настроек:

Также можно установить MySQL на macOS, используя:

Установить MySQL в Windows

MySQL можно установить в 64-битных выпусках Windows 10 и Windows 2012 Server R2 и выше. Вам также потребуются следующие среды выполнения:

Установщик MSI предоставляет сервер, а также такие инструменты, как MySQL Workbench. (Меньший «веб» установщик MSI загрузит пакеты, если будет выбран.)

Дважды щелкните файл MSI, чтобы запустить мастер установки, и обратитесь к документации MySQL за конкретными параметрами конфигурации.

По умолчанию:

  • двоичные файлы программы и документация установлены на % PROGRAMFILES% \ MySQL \ MySQL Server V.v \ (например, C: \ Program Files \ MySQL \ MySQL Server 8.0 \ )
  • Данные базы данных
  • хранятся в % PROGRAMDATA% \ MySQL \ MySQL Server V.v \ (например, C: \ ProgramData \ MySQL \ MySQL Server 8.0 \ )

Также доступен неустановленный ZIP-архив. Его можно скопировать на USB-накопитель или в любое другое место в системе Windows.

Сначала извлеките содержимое ZIP-архива в C: \ mysql или в любую папку по вашему выбору.

Затем создайте папку, в которой будут храниться данные базы данных, например C: \ mysqldata .Использование папки за пределами C: \ mysql безопаснее и позволяет обновлять файлы приложений.

Теперь создайте файл my.ini в C: \ mysql , в котором указаны приложения и папки данных. например:

  [mysqld]

basedir = C: / MySQL

datadir = E: / mysqldata
  

(Требуются косые черты прямого пути /, хотя можно использовать двойные обратные косые черты \ .)

Теперь инициализируйте папку данных и создайте пользователя root по умолчанию (без пароля), введя следующую команду в командной строке консоли:

  C: \ mysql \ bin \ mysqld.exe --initialize-insecure --user = mysql
  

Теперь сервер можно запустить с:

  C: \ mysql \ bin \ mysqld.exe --console
  

Используйте клиент MySQL, введя C: \ mysql \ bin \ mysql. exe -u root в другой консоли. Теперь вы можете вводить команды SQL, такие как show databases; и выйдите, набрав exit .

Сервер можно выключить с помощью:

  C: \ mysql \ bin \ mysqladmin.exe -u отключение root
  

При желании MySQL может быть установлен как автоматически запускаемая служба Windows:

  C: \ mysql \ bin \ mysqld.exe --install
  

Служба запустится при перезагрузке, или вы можете ввести net start mysql , чтобы запустить ее немедленно. Его можно остановить с помощью net stop mysql или управлять с помощью панели Services в Windows Administrative Tools :

Услугу можно полностью удалить с помощью:

  чистая остановка MySQL
C: \ mysql \ bin \ mysqld.exe - удалить
  

Подавляющие возможности MySQL

Существует несколько вариантов установки MySQL независимо от того, какую ОС вы используете.

Для тех, кто изучает MySQL, самый простой способ начать с облачного провайдера или комплексного пакета. По мере того, как ваше приложение начинает расти, рассмотрите возможность внедрения Docker в рабочий процесс разработки или управления локальной установкой MySQL. Docker становится все более практичным, поскольку к проекту присоединяются несколько разработчиков. В конце концов, вы сможете вернуться к облачным решениям по мере развития вашего успешного продукта.

Настройка современной среды разработки PHP с помощью Docker

В этом руководстве я расскажу, как лучше всего начать настройку среды разработки PHP, а также расскажу, как настроить Docker.Существует так много способов настроить среду разработки PHP, но использование Docker - это лучшая практика.

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

Немного предыстории

Одна из проблем веб-разработки заключается в том, что все быстро меняется.Лучшие практики CSS меняются по мере добавления в спецификацию новых свойств. (Как мы вообще обходились без CSS Grid?) Сейчас PHP находится на версии 8, и даже инструменты, которые мы используем для выполнения скриптов PHP, со временем совершенствуются. В результате многие учебники довольно быстро устаревают.

Еще пару лет назад я отправлял всех, кого учил, к прекрасной статье Бруно Скворца «Повторное знакомство с Vagrant: правильный способ начать с PHP». В то время это было фантастическое введение в (на тот момент) лучший способ создания локальной среды разработки.

Эта статья написана только в 2015 году, но пять или шесть лет - это целая вечность в постоянно меняющихся временных рамках веб-разработки. С тех пор «правильный путь» значительно продвинулся вперед.

Я быстро напомню, как все изменилось за эти годы.

1. Установка PHP, MySQL и Apache вручную

Если вы, как и я, достаточно взрослые, чтобы заниматься разработкой веб-сайтов в 90-е годы, вы вспомните, насколько неприятным был этот опыт. Тогда, если бы вы были в меньшинстве, кто не просто разрабатывал на реальном веб-сервере (да, мы действительно это сделали, да, это была ужасная идея), вы бы вручную установили Apache, PHP и MySQL на свою машину разработки.

Для настройки среды разработки требовался значительный опыт. Вам нужно было знать, как настроить веб-сервер, как настроить PHP, и вы должны были пройти процесс ручной установки и настройки всего программного обеспечения, которое вы использовали. Это было трудоемкой и сложной задачей для начинающих разработчиков.

2. Предварительно настроенные пакеты, такие как XAMPP

К началу-середине 2000-х люди начали собирать все необходимое программное обеспечение в один пакет, который устанавливал и настраивал все необходимое программное обеспечение.Это были такие пакеты, как XAMPP и WAMP, и одним нажатием кнопки они давали вам удобную среду разработки.

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

Использование XAMPP упростило настройку и запуск среды веб-разработки на вашем компьютере.В статье Бруно описаны проблемы этого подхода, но основная проблема возникает, когда вы хотите разместить свой сайт в Интернете. Версии PHP, MySQL и Apache (или NGINX) могут отличаться от тех, которые вы установили как часть вашего пакета XAMPP. Кроме того, есть пара незначительных, но разочаровывающих различий между Windows и Linux. Если вы разрабатываете свой сайт на компьютере под управлением Windows и загружаете его на сервер Linux, часть вашего кода может вообще не работать после загрузки.

3.Виртуальные машины и бродяга

В конце 2000-х - начале 2010-х годов среди разработчиков была тенденция к переходу на виртуальные машины. Идея заключалась в том, что вы могли запустить копию реальной операционной системы веб-сервера со всеми установленными на нем программами - точно такую ​​же конфигурацию и настройку, как и реальный веб-сервер, на котором вы собирались в конечном итоге развернуть свой веб-сайт. Таким образом, когда вы запустили сайт, не было никаких шансов, что он не заработает.

Хотя многие программисты увидели преимущества такой среды, сложность и время, необходимые для ее настройки, означали, что это сделали немногие.Так было до тех пор, пока не появился Vagrant (и связанные с ним инструменты, такие как Puphpet), которые избавили его от всех хлопот.

Взгляните на статью, на которую я ссылался ранее, чтобы получить отличное описание Vagrant, виртуальных машин и преимуществ такой настройки среды разработки.

4. Докер

Вся эта предыстория подводит нас к сегодняшнему дню и причине для этой статьи. Если Vagrant так хорош, зачем использовать что-то другое?

Основные преимущества виртуальной среды, настроенной с помощью Vagrant:

  1. Ваш компьютер разработки не привязан к определенной среде.Вы можете разместить несколько веб-сайтов: один с использованием Apache, один с использованием NGINX, один с использованием PHP 7 и один с использованием PHP 8.

  2. Когда сайт запускается, он загружается в ту же среду, в которой он был разработан.

Легко понять, зачем это нужно разработчикам. Следующий шаг к Docker сохраняет эти преимущества, избегая при этом некоторых недостатков сред Vagrant / Virtual Machine.

Что не так с Бродягой?

Несмотря на преимущества, среда разработки на основе Vagrant привносит свой собственный набор ограничений и проблем.

  1. Системные ресурсы. Vagrant требует запуска совершенно другой операционной системы. Вам необходимо загрузить и установить операционную систему, работающую на вашем веб-сервере, и все установленные ею пакеты. При этом используется значительный объем дискового пространства и памяти. Виртуальной машине обычно требуется как минимум 512 МБ ОЗУ. Это немного для современных компьютеров, но быстро прибавляется. Если вы хотите разместить один веб-сайт на PHP 7 и один на PHP 8, вам необходимо установить и настроить на вашем компьютере два разных экземпляра виртуальных машин.

  2. Вы должны убедиться, что виртуальная машина и сервер синхронизированы. Каждый раз, когда вы обновляете сервер или меняете его конфигурацию, вы должны не забывать обновлять локальную среду разработки с такими же изменениями.

  3. Он жестко фиксирует вас в операционной системе и конфигурации сервера. Перенести сайт с одного сервера на другой - сложная задача. Веб-сайт - это больше, чем просто сценарии PHP, изображения и CSS, из которых он состоит. Конкретная конфигурация сервера (например, установленные расширения PHP и nginx.conf / httpd.conf ) также необходимы для правильной работы веб-сайта.

  4. Существует очень ограниченный выбор доступных пакетов. В зависимости от того, какой дистрибутив Linux работает на вашем веб-сервере, у вас может не быть выбора, какую версию PHP вы запускать. Если вы не установите пакеты из сторонних репозиториев, вы не сможете использовать самую последнюю и лучшую версию PHP. На момент написания недавно стал доступен PHP 8. Если вы используете CentOS 8 / RHEL 8, вы застряли на PHP 7.3, пока вы не получите новую версию операционной системы. Если вы используете Debian, последняя доступная версия - 7.3. В других дистрибутивах будут доступны другие версии.

  5. Конфигурация сервера глобальная. В PHP есть файл настроек php.ini . При изменении этого параметра обновленная конфигурация применяется ко всем веб-сайтам, размещенным на сервере. То же самое касается nginx.conf для NGINX или httpd.conf для Apache. Экземпляр базы данных MySQL имеет базы данных для всех сайтов, размещенных на сервере.Внесение каких-либо крупномасштабных изменений в конфигурацию базы данных далеко идёт. Обновление настройки MySQL повлияет на каждый веб-сайт, использующий этот сервер MySQL!

  6. Версии пакета глобальны на реальном сервере. Хотя возможно для запуска нескольких версий PHP на одном веб-сервере, его сложно настроить и могут возникнуть странные побочные эффекты в зависимости от того, что делает ваш сценарий (например, когда у вас есть сценарий, который вы хотите запустить в модуле systemd / cronjob и забудьте, что вы должны использовать / bin / php72 , а не / bin / php ).

Хотя точки 5 и 6 можно преодолеть на машине разработки, запустив разные виртуальные машины Vagrant, вам понадобится реальный веб-сервер, который отражает каждую запущенную вами конфигурацию, чтобы веб-сайты работали, когда вы их загружаете.

Знакомство с Docker

Docker решает все перечисленные выше проблемы. Но что такое Docker и как он работает?

Начнем с вступления из Википедии:

Docker - это набор продуктов «платформа как услуга» (PaaS), которые используют виртуализацию на уровне ОС для доставки программного обеспечения в пакетах, называемых контейнерами.Контейнеры изолированы друг от друга и объединяют собственное программное обеспечение, библиотеки и файлы конфигурации; они могут общаться друг с другом через четко определенные каналы.

Прежде чем вдаваться в технические подробности, практическая выгода для нас, как веб-разработчиков, заключается в том, что Docker позволяет нам упаковать все, что веб-сайт, весь код PHP вместе с исполняемым файлом PHP, сервер MySQL и сервер NGINX в дополнение к файлам конфигурации. используется этими программами.

Весь код веб-сайта и точные версии программ, необходимых для запуска этого кода, упакованы вместе, фактически как одно приложение.Затем все это приложение может быть запущено в любой операционной системе . Когда кто-то запускает упакованное приложение, PHP, MySQL, NGINX и все написанные вами файлы PHP встраиваются в само приложение. Более того, точные версии MySQL, NGINX и PHP являются частью пакета. Когда вы запускаете приложение, загружаются и устанавливаются точные версии этих инструментов, для которых оно было разработано.

«Разве это не то, что виртуальная машина уже делает?» Я слышал, вы спросите.Да, но есть большая разница между тем, как Vagrant и Docker обрабатывают установку программного обеспечения.

С Vagrant, на котором запущена виртуальная машина, полная операционная система с определенной версией PHP, версией MySQL и (обычно) конфигурацией сервера клонируется с реального веб-сервера. Когда сервер обновляется, виртуальная машина также должна быть обновлена.

Однако при использовании Docker версия PHP / MySQL / NGINX предоставляется в виде единого пакета, известного как образ , и сервер может запускать столько разных образов, сколько захотите.

Преимущество здесь в том, что и на веб-сервере, и на вашей машине разработки используется один и тот же образ. Вы просто загружаете свое изображение на веб-сервер, запускаете там все приложение, и ваш веб-сайт готов к работе без необходимости какой-либо настройки веб-сервера.

Кроме того, каждое изображение полностью отделено от другого изображения на сервере. Каждое изображение (по одному на веб-сайт в этом упрощенном примере) отделено друг от друга. Каждый веб-сайт будет иметь свою конфигурацию NGINX, свой собственный php.ini и собственные установки PHP и MySQL. На каждом веб-сайте могут быть разные версии PHP. У вас даже может быть один веб-сайт, работающий на Apache, и один веб-сайт, работающий на NGINX, на одном компьютере одновременно. Даже если вы запускаете два разных веб-сайта NGINX, у вас будут одновременно работать два разных процесса NGINX с собственными конфигурациями.

У этого есть небольшие накладные расходы на память, но гибкость, которую он предоставляет, делает это очень стоящим компромиссом:

  1. Весь веб-сайт с необходимыми версиями PHP / MySQL, всю конфигурацию и весь код можно легко перемещать.Для переноса веб-сайта на новый сервер требуется просто скопировать одну папку. Вам не нужно вносить какие-либо изменения в конфигурацию PHP или NGINX на новом сервере. Вам даже не нужно устанавливать PHP или NGINX на самом сервере. Они будут автоматически установлены Docker при запуске приложения.

  2. Вы можете запустить точно такой же образ на вашей машине разработки. Используя Vagrant, вы эффективно запускаете копию конфигурации / установленных пакетов сервера на том же компьютере.С Docker на вашем ПК для разработки запускается тот же образ, что и на сервере.

  3. php.ini настроек, nginx.conf изменения конфигурации или обновление PHP до последней версии обрабатываются так же, как загрузка обновленного кода PHP на сервер. Вы обновляете приложение , и не имеет значения, меняет ли это какой-то код PHP или обновляет php.ini .

  4. Каждое изображение замкнуто в чем-то, что называется «контейнером».Скрипт PHP, запущенный в одном изображении, не может получить доступ к файлам, запущенным в другом. Подумайте open_basedir , но гораздо строже. Контейнер похож на очень легкую виртуальную машину. Он действует как собственная операционная система, и код, работающий в контейнере, даже не знает, что он запущен внутри контейнера, в то же время не имея возможности видеть что-либо за пределами контейнера. Если один из ваших сценариев PHP небезопасен и дает кому-то эффективный доступ к оболочке, они могут получить доступ только к файлам на сервере, к которому вы предоставили доступ контейнеру.

  5. В отличие от виртуальной машины, если два разных веб-сайта находятся в совершенно разных контейнерах, но используют одни и те же версии NGINX или PHP, дисковое пространство и оперативная память разделяются между двумя контейнерами.

  6. Поскольку каждое изображение является самодостаточным, переместить веб-сайт на другой сервер очень просто. Приложение не полагается на версию PHP, установленную на сервере, и его не волнует, какие пакеты установлены на сервере. Если вы хотите переместить Dockerized-приложение на другой сервер, это так же просто, как скопировать все файлы веб-сайта и запустить приложение.

  7. Вы можете запускать на сервере столько образов Docker, сколько захотите, каждый со своей собственной версией PHP, программным обеспечением веб-сервера, базой данных и связанными файлами.

Настройка вещей

Это теория в стороне. Теперь давайте перейдем к созданию сервера с помощью Docker.

Предварительные требования

Прежде чем мы начнем, вам нужно скачать и установить Docker. Перейдите на сайт Docker, затем загрузите и установите его для своей операционной системы.

Если вы работаете в Linux, вам следует установить пакеты docker и docker-compose через диспетчер пакетов вашего дистрибутива. В зависимости от вашего дистрибутива вам может потребоваться:

  1. Добавьте своего пользователя в группу docker , как описано в руководстве Docker здесь.

  2. Запустите docker service systemctl start docker.service и включите его с помощью systemctl enable docker .

Если у вас Windows или macOS, установщик сделает это за вас.

Во-вторых, поскольку мы собираемся запустить веб-сервер внутри Docker и перенаправить некоторые порты, если у вас уже есть веб-сервер (Apache, NGINX, XAMPP, IIS и т. Д.) Или MySQL, работающий на вашем компьютере, остановите их, прежде чем продолжить .

Начало работы

Веб-сервер обычно состоит из нескольких различных программ, таких как NGINX, PHP и MySQL. По терминологии Docker, каждая программа, которую вы хотите установить, - это служба .

Есть несколько способов создания этих сервисов в Docker. Я расскажу о самом удобном для пользователя. Docker поддерживает создание файла конфигурации с использованием YAML (еще один язык разметки).

Хотя вы можете ввести все параметры в командной строке, я рекомендую использовать файл конфигурации YAML по нескольким причинам:

  1. Это намного легче читать / понимать.

  2. Вам не нужно повторно вводить несколько длинных команд каждый раз, когда вы хотите запустить сервер.

  3. Вы можете отслеживать изменения в файле с помощью Git.

docker-compose.yml для NGINX

Docker предоставляет инструмент под названием docker-compose , который принимает файл конфигурации с именем docker-compose.yml и запускает перечисленные в нем службы. Начнем с добавления веб-сервера NGINX.

Во-первых, создайте где-нибудь на вашем компьютере папку, в которой будет храниться ваш веб-сайт. Вам нужно будет регулярно возвращаться в эту папку, поэтому запоминайте, где она находится. Создайте docker-compose.yml со следующим содержимым:

  версия: '3'
Сервисы:
    Интернет:
        изображение: nginx: последний
        порты:
            - «80:80»
  

Давайте посмотрим на конфигурацию по очереди:

  версия: '3'
  

Это сообщает docker-compose , какую версию спецификации YAML использовать. 3 - последняя версия, и разные версии имеют немного разные спецификации, ключевые слова и структуру.

Следующая строка, services: , будет сопровождаться списком всех служб, которые вы хотите запустить.

В нашем примере до сих пор есть только одна служба под названием web (вы можете называть ее как хотите), использующую официальный образ NGINX nginx: latest . Обратите внимание, что отступ с использованием пробелов (не табуляции!) Имеет значение. YAML полагается на уровень вложенности для определения структуры файла.

Если вы хотите указать другую версию NGINX, вы можете указать это здесь так:

  версия: '3'
Сервисы:
    Интернет:
        изображение: nginx: 1.18,0
        порты:
            - «80:80»
  

Я рекомендую использовать последней версии , если у вас нет веской причины использовать более раннюю версию.

Блок портов Блок устанавливает переадресацию портов. Он пересылает 80 на локальном компьютере на 80 на изображении. Любой запрос на хост-машине на http://127.0.0.1 будет перенаправлен на сервер NGINX, работающий в контейнере.

Запуск службы

Чтобы запустить сервер, вам нужно открыть терминал в вашей операционной системе и указать в нем папку, содержащую ваш docker-compose .yml файл. В Windows 10 самый простой способ - использовать проводник (ранее известный как проводник Windows, и его не следует путать с Internet Explorer). Перейдите в папку, содержащую ваш docker-compose.yml , затем щелкните File , а затем Откройте Windows Powershell . В Linux большинство файловых менеджеров имеют кнопку Открыть терминал здесь или аналогичную. В macOS вам нужно сначала включить эту опцию.

Когда ваш терминал будет открыт в правильном месте, введите docker-compose up .Вы должны увидеть результат, подобный изображению ниже.

Если вы получаете сообщения об ошибках, убедитесь, что Docker установлен и работает правильно. Если вы видите результат, подобный приведенному выше, вы можете подключиться к серверу, посетив http://127.0.0.1 в своем браузере. Если он работает, вы увидите тестовую страницу NGINX, как показано на рисунке ниже.

Почему не Apache?

Прежде чем мы продолжим, вам может быть интересно, почему я здесь не использую Apache. Если вы использовали XAMPP или аналогичный пакет, то в качестве веб-сервера вы используете Apache. Веб-сервер - это часть сервера, которая слушает запросы веб-браузера и отправляет ему файлы.

Apache в порядке, и он работает, но он существует всегда. Когда был создан Apache, Интернет был совсем другим местом. Apache большой, и есть много разных функций, которые пришли и ушли, но которые Apache по-прежнему поддерживает. Интернет сильно изменился с момента создания Apache, и, хотя это мощный сервер и будет работать нормально, большинство веб-сайтов в наши дни, как правило, используют NGINX.Его легче настроить, он легче и лучше настроен для задач, которые используются на многих современных веб-сайтах (например, потокового видео), и поэтому его доля на рынке быстро растет за счет Apache.

Мой общий совет: если у вас уже есть веб-сайт, на котором запущен Apache, нет причин для его изменения, но если вы начинаете новый проект с нуля, используйте NGINX.

Размещение файлов на сервере

Теперь, когда сервер установлен и работает через Docker, мы можем сделать наши файлы видимыми на сервере. Если вы привыкли к Apache, вы поместите их в httpdocs , htdocs или общедоступную папку где-нибудь на своем компьютере.

Поскольку сервер работает в контейнере , у него нет доступа ни к одному из файлов на вашем компьютере. Однако Docker позволяет указать том - файл или папку на вашем компьютере, которые используются совместно с контейнером. Вам понадобятся два тома : файл конфигурации nginx.conf (который мы еще не создали) и папка, в которой будут храниться файлы вашего веб-сайта.Измените свой docker-compose.yml , включив в него два тома :

  версия: '3'
Сервисы:
    Интернет:
        изображение: nginx: последний
        порты:
            - «80:80»
        объемы:
            - ./nginx.conf:/etc/nginx/conf.d/nginx.conf
            - ./app:/app
  

Это делает каталог nginx.conf и app из той же папки, что и ваш docker-compose. yml , доступным в контейнере. Любые изменения, которые вы вносите в файлы в томах , немедленно изменяются в контейнере, и файлы становятся общими для них.

Файл nginx.conf с хоста помещается по адресу /etc/nginx/conf.d/nginx.conf внутри контейнера. Это папка, из которой NGINX считывает файлы конфигурации. Папка app создается в корне контейнера в / app и является местом, где вы размещаете все сценарии PHP, изображения и файлы JavaScript вашего веб-сайта.

Перед перезапуском сервера создайте файл nginx.conf в том же каталоге, что и ваш docker-compose .yml со следующим содержимым:

  сервер {
    слушаем 80 default_server;
    корень / приложение / общедоступный;
}
  

Это говорит NGINX, что это конфигурация, которую он должен использовать для сервера по умолчанию, и что он должен обслуживать файлы из каталога / app / public . Мы могли бы просто обслуживать файлы из каталога / app , но рекомендуется хранить большинство файлов PHP вне общедоступного каталога. Поскольку сценарии PHP должны будут загружать файлы с использованием ../ , мы поместим наш общедоступный каталог на один уровень ниже.

Чтобы проверить, работает ли он, создайте страницу «Hello, World» по адресу app / public / index.html , создавая каталоги по мере продвижения. Содержимое может быть таким:

  

Привет, мир!

Перезагрузите сервер, вернувшись в терминал и нажав ctrl-c , чтобы остановить сервер, затем снова запустите команду docker-compose up , чтобы перезапустить его. (Вы можете нажать стрелку вверх, а затем Введите вместо того, чтобы вводить его повторно.)

Перезагрузите http://127.0.0.1 в браузере, и вы увидите свой Hello, World! тестовая страница. Теперь у вас есть рабочий веб-сервер с вашими файлами, которые обслуживаются на http://127.0.0.1 из вашего каталога app / public .

PHP

Если вы хотите запускать сценарии PHP, вам нужно добавить еще одну службу для PHP в свой docker-compose.yml и связать его с nginx :

  версия: '3'
Сервисы:
    Интернет:
        изображение: nginx: последний
        порты:
            - «80:80»
        объемы:
            -./nginx.conf:/etc/nginx/conf.d/nginx.conf
            - ./app:/app
    php:
        изображение: php: fpm
        объемы:
            - ./app:/app
  

Появилась новая служба php , использующая образ php: fpm-latest . Для NGINX вам потребуется пакет fpm (FastCGI Process Manager), но вы можете выбрать любую понравившуюся версию PHP, например php: 7.4-fpm , php: 7.3-fpm , php : 8,0 кадров в минуту . Если вы не укажете версию и используете только php: fpm , будет использоваться последняя версия, которая на момент написания была 8.0 .

Поскольку PHP потребуется доступ к вашим файлам .php из каталога / app , вам потребуется смонтировать том в образе PHP так же, как вы это сделали для образа NGINX. PHP не нуждается в доступе к файлу конфигурации nginx.conf , поэтому нет необходимости предоставлять ему доступ к нему.

Папка app теперь доступна на хост-машине и в контейнерах nginx и php .

Перед перезапуском сервера с docker-compose up нам нужно настроить NGINX для запуска .php через службу PHP. Откройте свой nginx.conf и измените его на следующее:

  сервер {
    слушаем 80 default_server;
    корень / приложение / общедоступный;

    index index.php index.html index.htm;

    расположение ~ \ .php $ {
        fastcgi_pass php: 9000;
        fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name;
        включить fastcgi_params;
    }
}
  

Строка index указывает серверу искать индекс .php вместо index.html в качестве страницы по умолчанию. Блок location указывает NGINX запускать любой файл с расширением .php через службу PHP ( fastcgi_pass php: 9000 , где php - это имя службы, настроенное в docker-compose.yml ) .

Создайте файл phpinfo в app / public / index.php :

   

Перезагрузите сервер, нажав ctrl-c в терминале, и повторно запустите команду docker-compose up .Если все настроено правильно, при посещении http://127.0.0.1 вы должны увидеть результат phpinfo () :

Предполагая, что ваш веб-сайт использует MySQL, если вы просмотрите страницу phpinfo () , вы заметите, что драйвер PHP MySQL не установлен. Мы хотим установить пакет PDO на PHP.

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

Мы будем использовать официальный образ php: fpm в качестве основы и установить в него драйвер PDO MySQL. Это требует создания собственного имиджа, но это не так сложно, как кажется.

Во-первых, измените свой docker-compose.yml , указав, чтобы он создавал образ для PHP вместо использования существующего php: fpm image:

  версия: '3'
Сервисы:
    Интернет:
        изображение: nginx: последний
        порты:
            - «80:80»
        объемы:
            -./nginx.conf:/etc/nginx/conf.d/nginx.conf
            - ./app:/app
    php:
        строить:
            контекст:.
            dockerfile: PHP.Dockerfile
        объемы:
            - ./app:/app
  

Вместо записи image теперь есть строка build под php . Директива context - это папка, в которой находится файл конфигурации, в нашем случае это . , текущий каталог (та же папка, что и наш docker-compose.yml ), а файл докеров - это имя файла, который мы будем использовать для создания нашего образа.

Создайте PHP.Dockerfile в той же папке, что и ваш docker-compose.yml , и добавьте следующее:

  С php: fpm

ЗАПУСТИТЬ docker-php-ext-install pdo pdo_mysql
  

Будет установлено расширение pdo_mysql для PHP. Директива FROM сообщает Docker, что он должен использовать php: fpm в качестве базового образа, а директива RUN используется для выполнения команд внутри образа.Здесь вы можете запустить любую команду Linux. В этом случае мы запускаем сценарий docker-php-ext-install , который удобно предоставляется как часть официального пакета PHP и позволяет нам устанавливать расширения PHP.

Если вы хотите использовать библиотеку MySQLi (хотя вам, вероятно, следует использовать PDO), вы можете установить ее вместо или вместе с PDO:

  С php: fpm

ЗАПУСТИТЬ docker-php-ext-install mysqli
  

Перезагрузите сервер с помощью команды docker-compose up .На этот раз по мере построения изображения вы увидите намного больше результатов. Это произойдет только при первом запуске docker-compose up . Однако, если вы внесете какие-либо изменения в PHP.Dockerfile в будущем, вам потребуется вручную перестроить его, выполнив команду docker-compose build .

Вы можете убедиться, что расширение pdo_mysql установлено, просмотрев вывод phpinfo () на http://127.0.0.1.

Пока мы устанавливаем расширения, давайте добавим расширение xdebug для более удобных сообщений об ошибках на нашем сервере разработки:

  С php: fpm

ЗАПУСТИТЬ docker-php-ext-install pdo pdo_mysql

ЗАПУСТИТЬ pecl install xdebug && docker-php-ext-enable xdebug
  

xdebug устанавливается через pecl , который предоставляется как часть официального образа PHP.Восстановите образ с помощью docker-compose build , затем перезапустите сервер с docker-compose up . Вывод phpinfo () должен показать, что установлены как pdo_mysql , так и xdebug .

MySQL

Теперь мы готовы к установке MySQL. И снова мы добавим его как службу в docker-compose.yml . Однако вместо установки официального образа MySQL мы будем использовать MariaDB, замену с потенциально улучшенными будущими условиями лицензирования теперь, когда MySQL принадлежит Oracle.Если вы раньше использовали MySQL, MariaDB будет работать точно так же:

  версия: '3'
Сервисы:
    Интернет:
        изображение: nginx: последний
        порты:
            - «80:80»
        объемы:
            - ./nginx.conf:/etc/nginx/conf.d/nginx.conf
            - ./app:/app
    php:
        строить:
            контекст:.
            dockerfile: PHP.Dockerfile
        объемы:
            - ./app:/app
    mysql:
        изображение: mariadb: latest
        среда:
            MYSQL_ROOT_PASSWORD: "секрет"
            MYSQL_USER: 'учебник'
            MYSQL_PASSWORD: "секрет"
            MYSQL_DATABASE: 'учебник'
        объемы:
            - mysqldata: / var / lib / mysql
        порты:
            - 3306: 3306
объемы:
    mysqldata: {}
  

Используемое нами изображение - mariadb: latest .Как и в случае с NGINX и PHP, при желании вы можете указать здесь конкретную версию MariaDB.

На этот раз есть блок среды , который используется для передачи некоторых переменных в контейнер при его создании. Они используются для настройки базы данных со следующими параметрами. Задайте свои собственные значения для следующих переменных:

  • MYSQL_ROOT_PASSWORD : пароль root для базы данных. Вы можете использовать это для входа в систему как root и управления базой данных.

  • MYSQL_USER и MYSQL_PASSWORD : имя и пароль для пользователя MySQL, который создается с ограниченными правами. Вы захотите использовать это из своих сценариев PHP.

  • MYSQL_DATABASE : имя автоматически создаваемой схемы, к которой указанный выше пользователь имеет доступ.

В приведенном выше примере создается база данных с именем tutorial , доступ к которой можно получить с помощью пользователя tutorial и пароля secret .

Вы также заметите, что внизу находится запись томов . Это создает специальный тип тома, который не отображается в локальной файловой системе. Здесь будут храниться данные для MySQL - все ваши таблицы, записи и т. Д.

Причина, по которой мы не хотим использовать папку в локальной файловой системе, заключается в том, что при загрузке приложения на реальный веб-сервер вы не хотите перезаписывать реальную базу данных тестовой. Здесь будут храниться все ваши записи среды тестирования / разработки.Это позволяет вам иметь разные базы данных на реальном сервере и сервере разработки, когда вы приступаете к загрузке своего веб-сайта.

Наконец, блок портов предоставляет порт 3306, чтобы мы могли подключиться к нему с помощью клиента, такого как MySQL Workbench, для управления базой данных. Я настоятельно рекомендую использовать это вместо PHPMyAdmin, если это то, к чему вы привыкли, хотя вы можете поместить PHPMyAdmin в папку app / public и запустить его оттуда, если хотите.

Перезагрузите сервер.Первая загрузка и настройка MariaDB займет минуту или две. Затем в сценарии PHP попробуйте подключиться к MySQL с PDO и выбранным вами именем пользователя, паролем и именем базы данных:

   PDO :: ERRMODE_EXCEPTION]);

$ query = $ pdo-> query ('ПОКАЗАТЬ ПЕРЕМЕННЫЕ, такие как "версия"');

$ row = $ query-> fetch ();

echo 'Версия MySQL:'. $ row ['Значение'];
  

Запустите этот сценарий на сервере.Если вы видите версию MySQL и сообщений об ошибках нет, значит, вы подключены к серверу MySQL и все настроено правильно.

Готово!

Как вы только что обнаружили, Docker требует небольшой настройки, если вы делаете это самостоятельно. Если вы используете существующий docker-compose.yml и файлы конфигурации, это может быть всего пара команд.

Когда вы запускаете свой сайт, вы просто загружаете весь проект, включая docker-compose.yml , nginx.conf и PHP.Dockerfile , запустите docker-compose up -d на сервере (флаг -d запускает его как службу в фоновом режиме), и он будет запускать тот же самый веб-сайт, который вы видите на ваша машина для разработки! Вам не нужно вручную настраивать и устанавливать PHP, MariaDB и NGINX на веб-сервере.

Как только вы освоитесь, вы никогда не оглянетесь назад. Docker значительно упрощает процесс разработки веб-сайта, потому что все самодостаточно.

TL; DR! Просто отдай мне файлы!

Если вы просто хотите загрузить сервер с показанной здесь конфигурацией, выполните следующие действия:

  1. Установите Docker.
  2. Откройте терминал в папке, в которой вы хотите сохранить свой веб-сайт (используйте File > Open Powershell в Windows, чтобы открыть PowerShell в текущей открытой папке).
  3. Выполните команду docker run -v $ {PWD}: / git alpine / git clone [email protected]: sitepoint-editors / sitepoint-docker-tutorial.мерзавец. (последняя точка важна!).
  4. Запустите docker-compose up .
  5. Перейдите на http://127.0.0.1.
  6. Создайте свои PHP-скрипты и файлы в app / public .

Как установить PHP в Windows | Пошаговое руководство

Понимание PHP - это часть пути веб-разработки, и установку PHP на вашем компьютере можно рассматривать как первый шаг на этом пути. В этой статье мы рассмотрим различные доступные методы установки PHP на вашем компьютере под управлением Windows.

Приступим.

Установите PHP с помощью пакетов

Перед тем, как приступить к любому из этих шагов, сначала запишите версию операционной системы и архитектуру вашего процессора. Это можно сделать, просто щелкнув правой кнопкой мыши значок «ThisPC» и выбрав «Свойства». Здесь вы можете проверить версию операционной системы (например, Windows 7, Windows 10). Здесь мы также можем найти тип архитектуры процессора (например, x32, x64).

В моем случае у меня 64-битная операционная система и Windows 10.

Как только мы узнаем технические характеристики системы, мы можем начать процесс установки. Есть несколько пакетов, которые доступны для загрузки и могут помочь без проблем установить Apache Spark, MySQL и PHP. WampServer и XAMPP - это пакеты, доступные для загрузки.

Установка PHP в Windows вручную

Установить PHP на машину с Windows 10 совсем несложно. Прежде всего, давайте разберемся с задействованными шагами, а затем подробно рассмотрим каждый шаг.

  1. Сначала мы сделаем последний пакет PHP с веб-сайта PHP.

  2. Когда у нас будет zip-файл, мы создадим папку PHP7 на диске C и извлечем содержимое zip-файла в эту папку.

  3. Внесите некоторые изменения в файл PHP.ini.

  4. Измените переменную среды пути.

Теперь давайте подробно рассмотрим каждый шаг. Первые два шага довольно просты, поэтому мы начнем с шага 3.

После создания папки «PHP7» на диске C нам нужно извлечь zip-файл, который мы загрузили с веб-сайта PHP, и поместить все его компоненты в папку «PHP7». После этого нам нужно найти файл с именем «php.ini-development», сделать копию этого файла и переименовать его в «php.ini».

После того, как мы сделали копию, нам нужно открыть «php.ini» с помощью блокнота или блокнота ++, чтобы внести некоторые изменения. Во-первых, нам нужно найти «extension_dir» и удалить точку с запятой, кроме «extension_dir =« ext »».

После этого нам нужно включить некоторые важные расширения, это можно сделать, просто прокрутив немного вниз, и вы внесете деньги в список всех доступных расширений. Здесь вы можете включить расширения в зависимости от ваших потребностей.

Примечание - порядок моего списка может отличаться от вашего.

Я включил все основные расширения, которые используются при выполнении большинства функций. После включения расширений сохраните файл «php.ini», и теперь мы перейдем к шагу 4.

Откройте панель управления и найдите «переменную». После этого нажмите «Изменить системные переменные среды». После этого нажмите «Переменные среды…», затем выберите «Путь» из системных переменных, после выбора «Путь» нажмите «Изменить…». Теперь нам нужно добавить путь, поэтому мы нажимаем «Создать», а затем добавляем «C». : PHP7 '.

После того, как вы добавили путь, вы закончили процесс установки. Вам может потребоваться перезагрузка, чтобы все изменения вступили в силу. Теперь откройте командную строку и введите «php -v». Вы увидите версию и другие сведения, связанные с версией PHP, установленной в вашей системе.

На этом мы подошли к концу блога «Как установить PHP». Надеюсь, вам понравилась эта статья, и вы готовы приступить к работе с PHP. Вы можете обратиться к этому руководству по PHP, чтобы больше не оставаться новичком в языке сценариев.

Если вы нашли этот блог с руководством по PHP актуальным, ознакомьтесь с курсом PHP Certification Training от Edureka, надежной компании по онлайн-обучению с сетью из более чем 250 000 довольных учеников по всему миру.

Есть к нам вопрос? Пожалуйста, укажите это в комментариях к «Как установить PHP», и я свяжусь с вами.

[решено] Как установить PHP на домашнюю версию Windows 7?

Спасибо. Я думал, что когда-то у меня был установлен Apache. Но сейчас я этого не вижу. Для чего вы используете PHP?

Это все в этом пакете WAMP - все прекрасно интегрировано вместе (apache для вашего сервера, php для его содержимого папки www.

Какой у вас тип php, зависит от того, какая версия установлена ​​с Vertrigo. Он полный, как есть.

В настоящее время там, где я работаю, это бесплатное программное обеспечение обслуживает около 100 тыс. Страниц в неделю без каких-либо проблем, причем уже много лет.

Если какое-либо из решений отвечает на ваш вопрос, не забудьте выбрать его и отметить вопрос как отвеченный (и таким образом позволить уделить внимание другим вопросам).

Ну, я не могу подключиться к MySql с помощью PHP.MySql был уже установлен до того, как я добавил PHP. Я использую IIS10 express. Также безуспешно пытался подключиться к серверу MySql с той же ошибкой. Я не могу найти никакого разрешения. Какие-либо предложения?

Нет причин, по которым php не может подключиться к предустановленному MySQL - если у вас правильная строка подключения. Подключаюсь к MS SQL - совершенно отдельному приложению. Даже на совершенно разных серверах. Я не использую IIS -

Судя по вашему письму, у вас уже установлен php.Он работает как php? Зачем вообще беспокоиться об этой ограниченной версии IIS, если сервер Vertrigo представляет собой полную реализацию всего его содержимого? PHP-> MySQL - это встроенный набор функций по умолчанию.

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

Я посмотрю на Vertigo, как вы предлагаете. Наконец-то у меня заработало соединение. Я использовал некоторые инструкции, которые, по-видимому, были неправильными.Были ссылки на расширение php_mysqli, которого не было в ini-файле или в папке ext. Я до сих пор не понимаю, какой файл php я скачал для установки. Это php 7.x. Есть ли где-нибудь надежный пакет для загрузки? У меня есть книга по PHP и MySql, но она довольно устарела. Итак, следующая задача - получить свежую книгу, посвященную PHP 7. Есть предложения? У меня уже есть несколько приложений, работающих с ASP.NET и MySql, но мне интересно узнать о PHP.

Мое предложение (т.э., мой учитель php): W3Schools
(собственно, это был php 5, 7 еще не было). Я использую его ссылки и те, что можно найти в официальном руководстве.

Я утвердительно, , не использую какую-либо форму ASP - я предпочитаю открытое программное обеспечение, доступное для всех (бесплатное), и вряд ли внесу произвольные изменения, которые заставят меня покупать обновления ОС.

Я установил Вертриго. Но когда я запускаю его, я получаю сообщение о том, что PHP и MySql не установлены должным образом. Когда я ввожу IP-адрес по умолчанию в Firefox, я получаю страницу с ошибкой, которую Firefox не может подключиться.Понятия не имею, где искать проблему. Любое предложение?

Я не могу диагностировать вашу систему отсюда.

Вы не знаете, где искать проблемы - что вы наделали?
Вы искали ответы в Google? Зашли на форумы, посвященные подобным проблемам?

????

Ну, я бросил Вертриго. У меня уже были установлены PHP и MySql. Итак, я установил Apache 2.4. Он запускается без особых усилий. Завтра подтверждаю, что они все вместе играют.Мне несколько мешает то, что ноутбук Sony Vaio с Windows 8.1. Он всегда вёл себя плохо. С другой стороны, я довольно быстро запустил PHP на моем рабочем столе Windows 7 с помощью IIS. С парочкой спотыканий. Я благодарю вас и других сотрудников codeproject за многолетнюю помощь. Мне всегда кажется, что в инструкциях, которые я беру в Интернете, чего-то не хватает.

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

Установить и настроить Apache + MySQL + PHP в Windows

Вы можете загрузить необходимый установщик по ссылкам ниже:

  • Сначала установите сервер MariaDB
  • При необходимости вы можете изменить порт в процессе установки. Если вы его изменили, то вы улучшите строку подключения в PHP.

Установите последнюю версию распространяемого пакета C ++ Visual Studio 2017: https: // www.microsoft.com/en-in/download/details.aspx?id=48145

  • Распакуйте загруженный архив Apache в каталог C: \ Apache24 \ (или в другое место).
  • После распаковки перейдите в папку C: \ Apache24 \ conf \ и откройте файл httpd.conf любым текстовым редактором.

  • В этом файле измените эту строку

    # ServerName www.example.com:80

    с httpd.conf

    Имя сервера localhost

  • Найти все вхождения AllowOverride None
    и заменить их на AllowOverride All

  • Включите mod_rewrite , раскомментируя следующую строку
    #LoadModule rewrite_module modules / mod_rewrite.так

Зарегистрируйте службу Apache

  • откройте консоль и перейдите в каталог Apache компакт-диск Apache24 / bin
  • затем введите следующую команду httpd -k установить
  • теперь вы можете увидеть службу Apache в Services

Некоторые советы от PRO

Измените свой DocumentRoot

  • Вы можете изменить каталог по умолчанию, в котором Apache будет искать веб-сайты.
  Корень документа "L: /"
<Каталог "L: /">
    Индексы опций FollowSymLinks
    AllowOverride All
    Требовать все предоставлено

  
Войти в полноэкранный режимВыйти из полноэкранного режима

Добавить пользовательские виртуальные хосты с локальными доменами

  • Вы также можете создать виртуальный хост с персональным локальным доменом для каждого вашего проекта.Добавьте следующее в файл httpd.conf (для каждого проекта):
  
    ServerAdmin [email protected]
    DocumentRoot "L: / MyProject"
    Имя сервера www.myproject.loc
    ServerAlias ​​myproject.loc
    ServerAlias ​​www.myproject.lc
    ServerAlias ​​myproject.lc
    ErrorLog "журналы / myproject.log"

  
Войти в полноэкранный режимВыйти из полноэкранного режима
  • Затем вы должны отредактировать hosts файл , в Windows он находится в C: \ Windows \ System32 \ drivers \ etc .В этом файле добавьте следующую строку
    • 127.0.0.1 www.myproject.loc myproject.loc www.myproject.lc myproject.lc

Изменить порт Apache по умолчанию

  • Вы можете изменить порт по умолчанию, на котором будет прослушиваться сервер Apache
    • просто замените Listen 80 , например, на Слушайте 8008
    • и перезапустить службу
  • Теперь вы видите свой веб-сайт по адресу http: // localhost: 8008 /
  PHPIniDir "C: / PHP7"
Приложение AddHandler / x-httpd-php.php
LoadModule php7_module "C: /PHP7/php7apache2_4.dll"
  
Войти в полноэкранный режимВыйти из полноэкранного режима
  • Затем измените DirectoryIndex с index.html на:
  
    DirectoryIndex index.php

  
Войти в полноэкранный режимВыйти из полноэкранного режима
  • FakeSMTP - это Java-приложение, имитирующее SMTP-сервер для локальной разработки в Windows.
  • Вы можете запустить его с помощью следующей команды: start java -jar C: \ sw \ faceSMTP \ fakeSMTP-2.0.jar --start-server --background --port 2525 --bind-address 127.0.0.1 --output-dir L: \ _ emails
  • Или вы можете создать командный файл (например: fakesmpt.cmd ) со следующим содержимым:
  @ эхо выкл.
запустить java -jar C: \ sw \ faceSMTP \ fakeSMTP-2.0.jar --start-server --background --port 2525 --bind-address 127.0.0.1 --output-dir L: \ _ emails
выход
  
Войти в полноэкранный режимВыйти из полноэкранного режима

Как настроить Apache PHP MySQL в окне 7 (WAMP)


Технологии меняются быстрее, чем мы думаем.Верно также и то, что все платформы веб-разработки не всегда привлекательны для работы. Это заставляет многих из нас иногда переходить с одной технологической платформы на другую.

В прошлом году я работал над профессиональной платформой Window 7 SP2 с IIS 7.0 с ASP.NET и хотел перейти на Apache 2.4, PHP 5.6 и MySQL 5.7. Я хотел научиться разрабатывать и конвертировать веб-проекты на открытой платформе. Это было сделано для того, чтобы получить больше вакансий фрилансера, поскольку, как вы знаете, большинство вакансий фрилансера доступны на WAMP.

Я разработал веб-фреймворк для веб-приложений и мобильных приложений на Microsoft ASP.NET 4.0 в Windows 7, так как я изучал эту технологию и был очень доволен этим.

В то время я работал в одной организации и занимался разработкой веб-сайтов, магазинов электронной коммерции и поисковых систем. Через некоторое время я начал работать фрилансером, но в Индии мне было трудно получить достаточное количество рабочих мест в ASP.NET. Я искал upwork, действительно, naukri.com, simplehired.com и многие другие сайты вакансий, которые передают работу фрилансерам.Я обнаружил, что 80-90% рабочих мест выполнялись по технологии AMP (Apache, MySQL и PHP). Итак, я попытался настроить среду в своей рабочей группе Windows 7.

Я не работал с веб-сервером Apache, но научиться этому было несложно, поскольку я работал с IIS 7.0. Я хотел установить новый веб-сервер Apache, но мне также хотелось, чтобы на моей машине работал IIS 7.0. Было много пакетов, которые предлагали простую и интегрированную установку, такие как WAMP, XAMP и т. Д., Но я хотел изучить процесс и, следовательно, перешел к пошаговой установке трех.

Как это работало

Я пробовал шаги в разном порядке, но я дам вам знать самый простой и наиболее подходящий порядок установки.

Шаг №1. Необходимые условия для установки среды WAMP

Вам потребуется Service Pack1 на вашем Windows 7 и JRE (Java Runtime Environment 1.8 или выше), установленный на вашем компьютере. На вашем компьютере также должен быть установлен распространяемый Microsoft C ++ 13 или более поздней версии. Этот распространяемый файл необходим для установки PHP 5.6 и MySQL 5.7.

Шаг 2. Установка Apache 2.4

Загрузите zip-файл с https://httpd.apache.org/download.cgi и распакуйте его. Вы найдете файл httpd (приложение). Запустите его двойным щелчком, и ваш веб-сервер Apache будет создан и запущен. Если IIS был запущен, Apache может не запуститься.

Остановить сервер IIS : В этом случае вы остановите сервер IIS или временно отключите его. Вы можете остановить сервер IIS, выполнив следующую команду из командной строки:

, и служба IIS будет остановлена.

Кроме того, вы можете остановить его из консоли управления Internet Information Services, выбрав «Остановить» на панели управления сервером.

После отключения или остановки службы IIS запустите приложение httpd, и ваша служба Apache будет готова к работе в качестве веб-сервера по умолчанию, то есть порта 80.

Теперь откройте браузер и просмотрите http: // localhost, и вы его получите. Работает! Ух ты! Вы готовы со своим веб-сервером Apache.

Важная информация : папка с документами по умолчанию - Apache24> htdocs.Здесь вы найдете index.html, в котором отображается сообщение выше. Теперь вставьте несколько строк PHP-скрипта, и он выдаст вам ошибку. Это связано с тем, что Apache еще не настроен для запуска сценариев PHP.

Шаг 3. Установите PHP 5.6

Загрузите PHP 5.6 с https://windows.php.net/download. Не забудьте загрузить и расширить потокобезопасную версию. Разверните zip-файл в папку php5. Теперь пришло время настроить Apache, чтобы разрешить запуск сценариев PHP.

Шаг 4.Настройте Apache для запуска сценария PHP

Откройте базовую папку Apache. В папке conf откройте файл конфигурации httpd.conf в любом редакторе. Перейдите в конец раздела LoadModule и добавьте строку:

LoadModule php5_module "c: \ php5 \ php5apache2_4.dll"

Теперь сохраните файл и перезапустите сервер Apache. Добавьте скрипт PHP в index.html. Просмотрите http: // localhost и альт! Ваш PHP-скрипт в действии.

Теперь пора выполнить подключение к базе данных и поиск данных.Без этого создание значимого приложения невозможно. Здесь мы будем работать с MySQL 5.7.

Шаг 5. Установка MySQL 5.7

Загрузите MySQL 5.7 с https://dev.mysql.com/downloads/installer/. Выберите подходящий установщик. Если у вас есть подключение к Интернету, вы можете установить его из онлайн-установщика или загрузить автономный установочный файл для компьютеров x86 и x64. Настройте MySQL 5.7 как оконную службу. Запустите установочный файл приложения, следуйте инструкциям и настройте его так, как вам нравится.Я бы порекомендовал установить как машину разработчика, чтобы на вашем компьютере были установлены сервисные и клиентские инструменты и обеспечивалось умеренное использование памяти. Если вы установите его как службу выделенного сервера, все ресурсы будут приоритетными для использования MySQL, и другие службы начнут страдать.

Шаг 6. Настройте PHP для использования MySQL 5.7

Сначала у вас есть два файла php.ini.development и php.ini.production. Переименуйте один из них в php.ini в качестве файла конфигурации, который вступит в силу.Теперь откройте php5> php.conf в блокноте и найдите строку с [extension_dir] рядом с «; В Windows:». Удалите точку с запятой и соответствующим образом установите здесь extension_dir = à ¢ € extà ¢ €Â. Этот параметр необходим, потому что все вспомогательные файлы DLL для подключения к MySQL доступны в папке php5> ext.

Теперь раскомментируйте строку extension = php_mysqli.dll и extension = php_pdo_odbc.dll (удалите точку с запятой, поскольку строки комментариев начинаются с;).

Итак, вы успешно настроили серверную среду для создания средних и крупных веб-приложений с использованием PHP и MySQL поверх Apache на платформе Window 7.

После завершения этого процесса настройки можно будет выполнить дальнейшую настройку в соответствии с требованиями вашего приложения. Единственное, что вам нужно запомнить, это остановить веб-сервер IIS 7.0 перед запуском сервера Apache 2.4 либо через командную строку, либо через консоль управления IIS. Лично я предпочитаю использовать командную строку, так как это быстрый метод.

Надеюсь, этот пост в блоге будет вам полезен. Поделитесь этой статьей или подпишитесь на нас, чтобы получать новые статьи, статьи и обновления от The Slip Post .

Как установить и запустить PHP в Windows 7, 8 и 10 (32-64 бит)?

PHP известен как гипертекстовый препроцессор. Серверный язык сценариев является одним из широко используемых языков программирования веб-разработки с открытым исходным кодом, а также является альтернативой дорогим и платным языкам программирования веб-разработки, таким как Active Server Pages (ASP ) от Microsoft и сложные, но бесплатные страницы Java Server Pages (JSP).

PHP в основном используется для разработки итеративных и динамических веб-сайтов, которые поддерживают подключение к базе данных и различные функции и API, которые позволяют разработчикам очень легко создавать современные динамические многофункциональные веб-страницы.В этой статье мы научимся устанавливать PHP с Apache и MySQL. Мы собираемся использовать XAMPP, что означает кросс-платформенный Apache, MySQL, PHP (также Python и Perl) - это пакет всего необходимого и необходимого программного обеспечения, которое используется для разработки веб-приложения и веб-сайта. XAMPP также включает FileZilla, Mercury, Tomcat и phpMyAdmin - который предлагает итеративный графический пользовательский интерфейс для MySQL.

Вот как установить и запустить PHP в Microsoft Windows 7, 8 и 10:

  • Загрузите последнюю версию XAMPP с сайта apachefriends.org
  • Установите XAMPP с помощью мастера установки
  • После установки XAMPP перейдите в каталог по умолчанию
  • В каталоге установки по умолчанию откройте xampp-control.exe
  • В Панели управления XAMPP нажмите кнопку «Пуск» спереди Apache и MySQL
  • После запуска Apache и MySQL снова перейдите в каталог по умолчанию.
  • В каталоге по умолчанию откройте папку «htdocs». ​​
  • В папке htdocs создайте свой первый файл PHP с вашим-именем-файлом.php
  • Откройте веб-браузер и перейдите по адресу «http: //localhost/your-file-name.php», чтобы запустить свой первый файл PHP.

1. Как загрузить XAMPP

Чтобы загрузить последнюю версию XAMPP:

  • Перейдите на apachefriends.org и нажмите кнопку «Загрузить».
  • На странице загрузки в разделе XAMPP для Windows нажмите кнопку «Загрузить (32-разрядная версия)», которая поддерживается как в 36-битной, так и в 64-битной Windows.
  • После завершения загрузки откройте загруженный файл
  • Появится диалоговое окно «Предупреждение» со следующим сообщением:

  • Просто нажмите кнопку «ОК», после чего откроется главный мастер установки.
  • Вкл. окно приветствия установки (первое) нажмите кнопку «Далее»
  • В окне «Выбор компонентов» проверьте необходимые параметры - я предлагаю вам выбрать только Apache (выбран по умолчанию), MySQL, PHP (выбран по умолчанию), phpMyAdmin и Fake Sendmail
  • После выбора желаемых опций нажмите кнопку «Далее», чтобы перейти к окну выбора папки установки.
  • В окне выбора папки установки выберите путь, по которому вы хотите установить.Я предлагаю вам установить XAMPP в каталог «D: \» или «E: \», и ​​если у вас есть только «C: \», у вас не будет возможности выбрать любой другой каталог, кроме «C: \»
  • После того, как вы выбрали папку для установки, нажмите кнопку «Далее».
  • После окна «Папка для установки» появится окно «Bitnami for XAMPP», в котором просто снимите флажок «Узнать больше о Bitnami для XAMPP» и нажмите кнопку «Далее», чтобы начать с процессом установки.
  • После завершения инстилляции выполните следующий шаг по запуску вашей первой программы PHP с XAMPP

2.Запуск первой программы PHP с XAMPP

Чтобы запустить первую программу PHP с XAMPP:

  • Перейдите в каталог по умолчанию, в который вы установили XAMPP
  • В каталоге XAMPP по умолчанию откройте папку «htdocs»
  • В папке «htdocs» ”Создайте свой первый файл PHP с помощью Блокнота или Notepad ++ и назовите его test.php (убедитесь, что расширение файла должно быть .php)
  • Для тестирования PHP вы можете добавить следующий фрагмент PHP в свой тест.php файл
  

Чтобы проверить ваш файл, например - PHP:

Панель управления XAMPP
  • Откройте панель управления XAMPP и запустите Apache и MySQL (элемент управления XAMPP можно найти в разделе «Все программы»> «XAMPP»> «Панель управления XAMPP»)
  • Один раз вы запустили XAMPP, откройте свой веб-браузер и введите «http: //localhost/test.php» (без кавычек), чтобы проверить файл, который вы создали.