Настройка среды разработки для PHP веб-разработчика в Windows
Первые два года своей профессиональной деятельности в создании сайтов я работал под Linux. Но при всей гибкости и мощности этой системы она, всё же, неудобна в мелочах. Однажды, эти мелочи перевесили все прочие плюсы и я решился пересесть на Windows. Сейчас я совершенно не жалею о потраченном времени на настройку среды разработки, а моим рабочим ноутбуком, который по совместительству является и домашним, стало гораздо удобнее пользоваться.
Этот пост может сэкономить время тем, кто так же как и я собирается перейти на Windows и тем, кто только ещё начинает работать PHP-программистом или веб-разработчиком. Для полноценной веб-разработки понадобятся: виртуальная среда, система контроля версий, менеджеры зависимостей, система сборки приложений, система развёртки приложений и, конечно, хороший редактор кода. Я не буду рассказывать зачем нужен каждый из компонентов, а лишь дам инструкцию по его установке в Windows. Я использую Vagrant, Composer, NPM, Bower, Git, Gulp, Capistrano и PHPStorm, дальше пойдёт речь именно об этих технологиях. Инструкции даны для Windows 10.
Начнём с установки PHP
Для разработки я использую PHP 7, чтобы мой код был совместим с ним, когда я соберусь переезжать. На боевых серверах у меня пока что PHP 5.6. Для того, чтобы случайно не написать код, который не будет работать в продакшене в моём PHPStorm указан уровень языка 5.6.
Для работы в Windows у PHP есть специальная версия языка, которую можно скачать с сайта PHP. Для того, чтобы установить PHP 7 в операционной системе Windows понадобится программа Visual C++ Redistributable for Visual Studio 2015, которую можно скачать с официального сайта Майкрософта. Установка этой программы не содержит никаких трудностей, нужно просто нажимать кнопку «Далее».
После установки Visual C++ Redistributable скачиваем архив PHP 7 для Windows (VC14 Non Thread Safe x64 или x86 в зависимости от разрядности системы) c официального сайта PHP. В архиве нет инсталлятора, его просто нужно распаковать в папку где-нибудь на диске. В пути к этой папке не должно быть пробелов и русских букв, у меня это C:\php.
После распаковки нужно добавить PHP в системный PATH для того, чтобы можно было запускать PHP из любого каталога:
- нажимаем win+x;
- переходим в Advanced system settings;
- выбираем Environment Variables;
- выбираем переменну PATH и нажимаем кнопку Edit;
- нажимаем кнопку New и вводим адрес каталога с распакованным PHP, например C:\php;
- нажимаем кнопку Ok.
Теперь нужно настроить PHP для работы:
- переименовываем файл php.ini-production в php.ini ;
- раскоментируем (убираем знак ; ) перед строчками:
- extension=php_curl.dll ;
- extension=php_gd2.dll ;
- extension=php_mbstring.dll ;
- extension=php_openssl.dll ;
- extension=php_pdo_mysql.dll ;
- extension=php_pdo_sqlite.dll ;
- extension=php_sqlite3.dll .
Всё, PHP 7 установлен в системе и готов к использованию.
Система контроля версий
Установить Git на Windows проще простого. В качестве приятного бонуса вместе с Git поставляется консоль Git bash. Работать с этой консолью гораздо удобнее, чем со стандартной CMD в Windows. Кроме того, она понимает некоторые полезные линуксовские команды, такие как find, ls и прочие.
При установке Git под Windows вам нужно будет прописать git.exe в PATH вашей системы, чтобы Git можно было запускать из любого места в командной строке. А также указать Git’у, чтобы при получении кода он не менял символы окончания строк в файлах (эти символы отличаются на системах с Linux и Windows). Всё это делается парой кликов мышкой через инсталятор Git.
Вот скриншоты важных страниц установки Git:
- Экран выбора установки программ в PATH вашей системы. Выбирайте средний вариант — так вы сможете использовать Git из командной строки из любого каталога и не потревожите стандартные программы Windows find и sort;
- Здесь мы указываем как Git будет поступать с символами окончания строк. На Windows и Linux эти символы разные и Git может менять их перед отправкой и получением кода из репозитория. В моём случае лучший выбор — это не вмешиваться в код при получении и следить за тем, чтобы в репозиторий не попадали файлы с символами Windows-style.
- Последний экран не столь важен, здесь можно указать что будет в основе надстройки Git Bush — стандартная консоль Windows или MinTTY. Если у вас Windows до 10 версии, то лучше выбрать MinTTY.
После установки укажите Git’у ваше имя и электронную почту. Эти данные будут передаваться с каждым коммитом и их нельзя будет изменить.
Откройте Git Bush и запустите две команды:
На этом первоначальная настройка Git закончена.
Менеджеры зависимостей NPM, Bower и Composer
Для того, чтобы получить NPM нужно установить NodeJS.
У NodeJS есть официальный установщик для Windows, поэтому установка будет проще простого:
- скачиваем установщик с официального сайта NodeJS;
- запускаем скаченный установщик и нажимаем несколько раз кнопку Next, попутно соглашаясь с условиями.
Для того, чтобы проверить, установился ли NodeJS и NPM, откройте консоль Windows или Git bush (если консоль уже была открыта, то нужно её закрыть и открыть снова, чтобы обновить системный PATH) и выполните команды:
Если команды выдали версии, например: «v6.2.0» и «3.8.8», то это значит, что всё успешно установлено и можно работать.
После установки NPM можно приступить к установке Bower
Здесь всё просто, введите в командной строке:
Параметр -g нужен для того, чтобы установить Bower глобально и иметь возможность запускать его из любого каталога.
Composer
У пакетного менеджера Composer есть специальный установщик для Windows. Скачать его можно с официального сайта. Сама установка элементарна и займёт не больше 5 минут, но есть две особенности.
Во первых, перед установкой Composer нужно установить PHP. О том как это сделать написано в начале поста. Во вторых, после установки Composer нужно передать ему специальный GitHub Tokken для того, чтобы обойти ограничени GitHub’а на количество обращений по API.
Но начнём с установки. После скачивания и запуска установщика он попросит указать путь к PHP. Если вы добавили PHP в PATH, как указано у меня в инструкци, то Composer сам определит этоть путь. Если нет, то вам нужно указать этот путь самостоятельно.
После этого нужно ещё несколько раз нажать Next и Composer будет установлен в систему и доступен через командную строку из любого каталога.
В процессе работы с Composer программа в какой-то момент сама предложит вам ввести GitHub Tokken и даст ссылку на его создание. Но можно не ждать этого и сделать всё самому. Создать токен можно на специальной странице GitHub’а. Для того, что передать токен Composer’у нужно ввести в командной строке команду
Всё, на этом Composer установлен и готов к использованию.
Система сборки проекта Gulp
Так как он часть экосистемы NPM, то тут всё просто:
Параметр -g нужен для того, чтобы установить Gulp глобально и иметь возможность запускать его из любого каталога.
Виртуальная среда Vagrant
Для установки Vagrant в Windows предварительно понадобится установить один из провайдеров виртуальной среды. Я использую VirtualBox от Oracle. Установка обеих программ не составляет абсолютно никакого труда и требует только вовремя нажимать кнопку Next.
Ссылки на страницы откуда можно скачать установщики:
- VirtualBox;
- Vagrant.
После установки, Vagrant можно будет запускать из командной строки из любого каталога.
Система развёртывания Capistrano
Для того, чтобы установить Capistrano на Windows в первую очередь нужно установить язык программирования Ruby. В этом нет ничего сложного, для установки языка в Windows существует специальный проект rubyinstaller.org. Нужно лишь скачать установщик и несколько раз нажать кнопку Next. Не забудьте только поставить галочку напротив пункта о добавлении Ruby в PATH Windows.
Это позволит запускать Capistrano из любого каталога, что очень удобно.
После установки Ruby настало время установить Capistrano. Откройте командную строку (если она была открыта, до установки Ruby, то закройте и откройте её снова, чтобы обновить данные из PATH) и введите команду:
Эта команда установит Capistrano в систему и в дальнейшем его можно будет запускать командой:
Как видите, всё элементарно.
Все необходимые компоненты установлены. Осталось только выбрать хороший редактор кода. Я использую PHPStorm, так как он поддерживает все инструменты, которые перечислены в этом посте и ежемесячная индивидуальная подписка на эту программу стоит меньше $10. Но, конечно, можно установить любой редактор на свой вкус.
Сразу после установки PHPStorm на Windows нужно сделать две важные настройки:
- указать UTF-8 в качестве кодировки всех файлов по умолчанию;
- указать символ \n в качестве символа окончания строки по умолчанию.
Это необходимо сделать, так как всё тестирование и работа сайтов идёт в среде Linux и неверные символы окончания строк и кодировка файлов может приветси к разным ошибкам, у которых трудно будет выявить причину.
Обе настройки находятся в разделе Editor. Попасть в настройки можно с главного экрана PHPStorm.
Либо с верхнего меню через File -> Default settings.
Окончание строк в файлах настраиваем в разделе Editor -> Code Style.
Кодировку файлов настраиваем в разделе Editor -> File Encodings.
На этом всё. На установку всех компонентов понадобится примерно час времени.
Данная статья не подлежит комментированию, поскольку её автор ещё не является полноправным участником сообщества. Вы сможете связаться с автором только после того, как он получит приглашение от кого-либо из участников сообщества. До этого момента его username будет скрыт псевдонимом.
Как установить cURL на Windows?
Я выполнил все инструкции здесь: http://www.tonyspencer.com/2003/10/22/curl-with-php-and-apache-on-windows/
для установки & config apache получите пакеты PHP5 и получите пакеты CURL.
Я запускаю apache и запускаю скрипт PHP. без проблем. но когда я запускаю php-скрипт с завитком, он терпит неудачу.
Он возвращает: **Call to undefined function curl_version() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\testing.php on line 5**
В строке 5 вызывается curl_init()
Я вывожу php -i, чтобы узнать, вызывается ли правильный путь к расширению. Он правильно установлен:
Я даже пытался запустить curl_version() но все же возникает ошибка такого же типа.
Похоже, что PHP не может найти расширение CURL, но php.ini (а также php -i) показывает, что он установлен.
Причина, по которой мне нужно использовать CURL, – это требование моего проекта. Поэтому я могу только придерживаться этого. XAMPP … как он работает в Windows? Есть ли сайт, который вы можете порекомендовать? Благодарю.
Я пробовал много вещей при установке cURL и проверял все, но все же, я все еще обнимаюсь вокруг проблемы и понятия не имею, что происходит.
Сервер Apache использует правильный PHP.ini. и PHP.ini имеет правильный extension_dir и extension = php_curl.dll. Я понятия не имею, почему это не работает. даже я следую за каждым шагом для его настройки. 🙁
Вероятно, вы ошибаетесь, что PHP.ini вам нужно изменить. сначала добавьте PHPinfo (); на info.php и запустите его из своего браузера.
Запишите путь каталога PHP ini, который вы видите в списке переменных сейчас! Вы, вероятно, заметите, что он отличается от вашего INI-файла PHP-CLI.
Для установки завитка выполните следующие действия:
Выберите операционную систему в раскрывающемся списке: либо Windows / Win32, либо Win 64. Нажмите «Выбрать»!
Для Win 32 выберите, будете ли вы использовать завиток в командной строке Windows (Generic) или на терминале Cygwin (cygwin). Для Win 64 выберите, будете ли вы использовать завиток в командной строке Windows (Generic) или MinGW (MinGW64). Нажмите «Выбрать»!
При необходимости выберите свою операционную систему Windows. Конец.
Нажмите Загрузить для версии с включенным или отключенным SSL.
Откройте загруженный zip-файл. Извлеките файлы в удобное для поиска место, например C: \ Program Files.
Тестирование завитка
Откройте терминал командной строки Windows. (В меню «Пуск» выберите «Выполнить», затем введите cmd.)
Установите путь, чтобы включить каталог, в который вы помещаете curl.exe. Например, если вы поместите его в C: \ Program Files \ curl, вы должны ввести следующую команду: set path =% path%; «c: \ Program Files \ curl»
ПРИМЕЧАНИЕ. Вы также можете напрямую скопировать файл curl.exe любым существующим путем в вашем пути
- Тип curl. Вы должны увидеть следующее сообщение: curl: попробуйте «curl -help» или «curl -message» для получения дополнительной информации. Это означает, что завиток установлен, и путь правильный.
Я использую XAMPP, в котором есть несколько файлов php.ini.
Вы можете найти строку в файлах php.ini ;extension=php_curl.dll
Удалите ; в начале этой строки. Возможно, вам придется перезапустить сервер Apache.
У меня также были проблемы с этим. После того, как все эти шаги сделаны правильно и некоторые исправленные недоразумения (нет extensions_dir, но extension_dir, и нет session.save_path, но session.save_path) ничего не работает.
Наконец, я нашел эту заметку на php.net:
Примечание. Примечание для пользователей Win32. Чтобы включить этот модуль в среде Windows, libeay32.dll и ssleay32.dll должны присутствовать в вашем PATH. Вам не нужно libcurl.dll с сайта cURL.
Недавно я установил Curl на PHP5 для Windows Vista. Я не включил CURL-библиотеку, когда я первоначально установил PHP5, поэтому ничего не появилось в phpinfo () или php.ini.
Я установил CURL, перезапустив установщик PHP5 (php-5.2.8-win32-installer.msi для меня) и выбрав «Изменить». Затем я добавил компонент CURL. Перезапустите Apache, и CURL должен работать. CURL появится в phpinfo (). Кроме того, вот пример скрипта, который вы можете запустить, чтобы проверить, работает ли он. Он отображает RSS-канал от Google:
Примечание. Примечание для пользователей Win32. Чтобы включить этот модуль (cURL) в среде Windows, libeay32.dll и ssleay32.dll должны присутствовать в вашем PATH. Вам не нужно libcurl.dll с сайта cURL.
Эта заметка решила мою проблему. Мысль об обмене. libeay32.dll & ssleay.dll вы найдете в папке установки php.
Еще один ответ для других людей, у которых была эта проблема
когда вы прокомментируете линию расширения, измените ее на:
Расширение = C: /php/ext/php_curl.dll
или расположение папки расширения, для меня это не сработало, пока я не сделал это
Да, после установки есть 3 файла php.ini, один для php4, один для php5, а один для apache. Пожалуйста, измените их соответствующим образом.
Я согласен с Erroid, вы должны добавить каталог PHP в среду PATH.
Это сработало для меня. Спасибо.
В моем apache я должен указать:
PHPIniDir «C: // php» Приложение AddType / x-httpd-php .php
а для php.ini вместо использования php.ini_recommend используйте php.ini_dist для настройки моего php.ini.
затем убедитесь, что двигатель php включен. то он работает сейчас. Спасибо всем.
Вы можете использовать двоичный файл файла curl .download отсюда: http://www.paehl.com/open_source/?CURL_7.22.0 Загрузите файл и после того, как извлечение будет загружено на любой диск и установите абсолютный путь в среду, вы можете также используйте curl в качестве команды в окнах. например c: \ curl -u user@example.com: пароль http: // localhost: 3000 / user / sign_in
Вы также можете использовать CygWin и установить пакет cURL. Он работает очень хорошо и безупречно !!