Обновление PHP в XAMPP для Windows?

176

Я хотел бы знать, как вы обновляете PHP в Xampp для Windows? Я пытался загрузить последнюю версию PHP с основного сайта PHP, но когда я проверяю (phpinfo), я все равно получаю, что предыдущая версия все еще используется.

Стэнли Нгумо
источник
Следуйте этому посту. Это работает для меня.
Абу Абу

Ответы:

127

Сделайте резервную копию вашей htdocs и папки с данными (подпапка папки MySQL), переустановите обновленную версию и замените эти папки.

Примечание. Если вы изменили конфигурационные файлы, такие как PHP (php.ini), Apache (httpd.conf) или любые другие, пожалуйста, создайте резервную копию этих файлов и замените их новой установленной версией.

S-Sharma
источник
11
Я переименовал свой текущий XAMPP в C: \ XAMPP в C: \ XAMPP ORIG, чтобы я мог установить самую новую версию XAMPP в C: \ XAMPP, но при этом все еще иметь данные и исходную версию моего приложения на случай, если что-то пойдет. Я испугался после установки новейшего XAMPP и увидел, что он «перезаписал» мой XAMPP ORIG - на моем диске C: был только C: \ XAMPP - но облегчился, когда мои htdocs и mysql \ data были в новой обновленной версии XAMPP.
Эндрю Копер
2
Я всегда так делал, но некоторые базы данных в папке с данными резервных копий ломались, когда помещались в недавно установленную папку xampp. Поэтому я всегда ищу обновление PHP без обновления apache.
Ситху
@whitelettersandblankspaces вы пользователь xampp? Я думал, что это будет совершенно ясно для любого, кто использует xampp ... Тем не менее, мое возражение идет в Dharmang, он ответил ранее и с большей точностью, что, если я хочу придерживаться тех же версий Apache и MySql и просто обновить PHP? Этот ленивый (но ясный) ответ не распространяется на это
lucasreta
30
Помните, что этот ответ описывает только сохранение данных в Интернете и MySQL. В него не входят изменения конфигурации PHP (php.ini), Apache (httpd.conf и др.) И т. Д.
Kwebble
14
Это обновление Xampp, а не обновление PHP с тем же Xampp.
Skrol29
60

Вы можете перейти по следующей ссылке, так как она мне помогла, должна работать и у вас. http://hype-free.blogspot.com/2007/07/updating-php-in-xampp-for-windows.html

Понимая, что мой ответ помог нескольким пользователям, вот правка из оригинальной ссылки:

Редактировать:

Прежде всего, всегда делайте резервную копию ваших данных.

  1. Загрузите последнюю бинарную версию PHP (убедитесь, что вы получили пакет .zip, а не установщик)
  2. Разархивируйте его в каталог
  3. Перезапишите содержимое каталога в подпапке php вашего установочного каталога XAMPP.
  4. Перезапишите содержимое каталога apache \ bin более новыми версиями.
  5. Теперь хитрость : возьмите файлы с именами «_2» (например, php5apache2_2.dll или php5apache2_2_filter.dll), скопируйте их в подкаталог apache \ bin и удалите часть «_2», перезаписав существующие файлы. Это необходимо, потому что XAMPP использует Apache версии 2.2, а файлы с префиксом 2 создаются для Apache 2.0, поэтому вы должны взять сборку файлов для более новой версии (которая имеет другой интерфейс плагина) и переименовать их в именах файлов, ожидаемых XAMPP ,

ПРИМЕЧАНИЕ: внутри установки XAMPP есть две директории, которые должны быть обновлены новой версией файлов, а именно phpподкаталог и apache/binподкаталог.

Dharmang
источник
Шаг 4 не нужен. После всего остального я также скопировал php.ini и php / extras из папки резервного копирования. (Это также упоминалось в комментариях к статье, что мне тоже помогло)
Муса Хайдари
@Dharmang: к сожалению, я сделал shift + delete всю папку xampp, php apache .... За попытку установить последнюю версию php. Теперь я запутался, как начать? .. Можете ли вы помочь мне, пожалуйста?
шт
Теперь установите последнюю версию, но ваши данные (например, каталог www) теперь уничтожены, вы можете попробовать какое-нибудь программное обеспечение для восстановления.
Дхарманг
1
@ Дарман, спасибо за твой пост. Можете ли вы сказать мне, где находятся файлы, которые вы упомянули в ШАГЕ 5, а также когда мне нужно заменить их перед перезаписью содержимого или после (как упомянуто в
ШАГЕ
Вам необходимо скачать интересующую вас версию PHP с сайта xampp.
Dharmang
53

Самый простой способ обновления PHPв XAMPP:

  1. Скачайте последнюю портативную версию XAMPP.
  2. Распакуйте архив (не там, где XAMPPуже установлен).
  3. Скопируйте PHPпапку из распакованного архива.
  4. Сохраните резервную копию PHPпапки, которая находится в установленном XAMPPкаталоге. Вы можете сделать резервную копию, например, изменив PHPимя папки на PHP-oldили подобноеPHP-version-number
  5. Вставьте PHPпапку, которую вы скопировали из извлеченного архива.
  6. Замените php.iniфайл файлом резервной копии php.iniна случай, если вы ранее изменили настройки по умолчанию.
  7. Вот и все, запустить / перезапустить server.
Викас Хунтета
источник
Я не могу найти zamp-архив XAMPP, похоже, есть только exe-установщик.
dlofrodloh
2
@dlofrodloh Здесь вы можете найти все файлы XAMPP sourceforge.net/projects/xampp/files .
Викас Хунтета
2
Обновление в 2018 году: я пытался обновить 7.0.27 до 7.2.7 и работал как шарм. Самое большое преимущество перед переустановкой всего xampp - это сохранение всех настроек (кроме этого php.ini). Спасибо за это
Mikec007
1
@VikasKhunteta Я знаю, что это просто обновление PHP, но в реальном мире вам часто нужно принимать во внимание и БД, и это может быть грубым пробуждением, когда ваши вещи больше не работают. Я попробовал пару решений, но у меня ничего не вышло, поэтому я перешел от полной среды, такой как XAMPP.
сва
1
@AdheneManx У меня была та же проблема, и ваше предложение PHPMyAdmin работало отлично. Я также хочу отметить, что моя версия PHP установлена ​​как x86, поэтому версии x64 не будут работать. Необходимо скачать правильную переносимую версию Xampp x86 sourceforge.net/projects/xampp/files/XAMPP%20Windows/7.3.2 - Вы можете проверить, установлена ​​ли у вас x86 или x64phpinfo()
Linesofcode,
13

Мне нужно было обновить мой php с 5.3.8 до 5.3.29 . (оба Thread Safe) в Windows

Шаги, которые я сделал:

  1. Сделайте резервную копию моей начальной папки php под xampp.
  2. Скачал zip отсюда http://windows.php.net/download/#php-5.3-ts-VC9-x86
  3. Распакуйте этот zip в папку xampp.
  4. Скопировал файл php.ini из старой папки php в новую.
  5. Скопировал пару папок, которых у меня не было, в новую папку php, из старой. Например: дополнения, которые содержали файл browscap.ini (этот нужен)
  6. Скопировал нужные расширения из старой папки php ext в новую php ext папку . Я скопировал их вручную, проверив список расширений из файла php.ini.
  7. Скопированы также эти файлы: php5apache2_2.dll, php5ts.dll

Надеюсь, что я покрыл все.

Скорее всего, эти шаги не будут работать, если вы измените основные версии php, например, с 5.3.x на 5.4.x, но для младших версий это должно сработать.

Кроме того, это хороший способ узнать, что не так ... запустите командную строку и попробуйте запустить httpd.exe, в каталоге xampp / apache / bin оттуда будут перечислены найденные ошибки.

ЦРК
источник
1
Не работал для перехода на php7, но с 5,5 до 5,6 работал хорошо!
Влад
10

Я обновился до php7.2 с php5.6

Шаги, которым я следовал.

  1. Загрузите бинарный файл PHP отсюда . Я скачал VC15 x86 Thread Safe Zip файл.
  2. Создал резервную копию папки xampp / php .
  3. Извлеките все содержимое zip-файла в папку xampp / php.
  4. Скопировал php.in i (как я уже модифицировал его, и я хочу вернуть свою конфигурацию, если вы использовали настройку по умолчанию, пропустите этот шаг.)
  5. Изменить файл ниже

C: \ XAMPP \ Apache \ конф \ экстра \ HTTP-xampp.conf

5.1. замещать

Загрузить файл "C: /xampp/php/php5ts.dll"

Загрузить файл "C: /xampp/php/libpq.dll"

LoadModule php5_module "C: /xampp/php/php5apache2_4.dll"

в

Загрузить файл "C: /xampp/php/php7ts.dll"

Загрузить файл "C: /xampp/php/libpq.dll"

LoadModule php7_module "C: /xampp/php/php7apache2_4.dll"

  1. Перезапустите Apache
Анураг Прашант
источник
Не идеальное решение: Предупреждение PHP: Запуск PHP: не удается загрузить динамическую библиотеку php_mysql.dll (попытался: C: \ xampp \ php \ ext \ php_mysql.dll ...
Harry
Попробуйте скачать точную сборку. в моем случае это был VC15 x86 Thread Safe
Anurag Prashant
1
@Harry - Пожалуйста, измените его на php7_mysql.dll (или любой другой). Вопрос в том, чтобы обновить модуль php, а не другие библиотеки.
Анураг Прашант
9

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

prodigitalson
источник
2
XAMPP не имеет текущей версии PHP, поэтому новая установка была бы бесполезна
webby68
Вы можете обновить компоненты XAMPP, проверьте мой ответ здесь
Vikas Khunteta
9

загрузите желаемую версию двоичного файла php с веб- сайта http://windows.php.net/download/ . скачать Thread Safe бинарную версию на молнии. Распакуйте загруженную версию PHP в отдельную папку. Пожалуйста, убедитесь, что имя вашей новой папки php не "PHP". Может быть, вы можете использовать имя файла в качестве имени версии. Например, для php 5.4 вы можете использовать php54.

Скопируйте новую папку php в папку xampp. Теперь перейдите в папку yourxampp / apache / conf / extra. Откройте файл httpd-xampp.conf из папки extra. Измените следующие переменные:

Переменная PHPINIDir будет / Varaible LoadModule будет //php5apache2_2.dl

Сохраните файл httpd-xampp.conf. Перезапустите сервер XAMPP apache. Если ваш сервер успешно перезагружен, тогда обновляется версия php вашего сервера.

Танзим
источник
6

У меня пока недостаточно репутации, чтобы комментировать, но, чтобы добавить ответ ssharma:

После того, как вы скопируете папку htdocs в безопасное место, просто экспортируйте свои базы данных из PHPmyadmin. Просто зайдите в каждую из ваших баз данных и нажмите на вкладку экспорта в верхней части. Экспортируйте их как sql (или как угодно, просто помните, что вы выбрали). Обновите установку XAMPP. Теперь в новой версии XAMPP создайте базы данных, которые вы хотите вставить заново. Пример: у вас есть база данных с именем «test», которую вы экспортировали из старой установки, назовите новую пустую базу данных тем же. Теперь перейдите в «тест» и нажмите кнопку импорта в верхней части (прямо рядом с кнопкой экспорта). Нажмите «Выбрать файл», найдите файл SQL, который вы экспортировали ранее (должен быть «test.sql»), и импортируйте. Ваши таблицы и данные будут на месте.

ПРИМЕЧАНИЕ. Существует возможность экспортировать всю коллекцию баз данных (имя файла 127.0.0.1.sql). Но мне никогда не удавалось правильно его импортировать. Сделайте каждую из ваших баз данных отдельно, чтобы гарантировать, что это работает. Я сделал этот пост довольно скучным, но это потому, что я люблю писать для людей, которые еще точно не знают, что они делают (я сам был там не так давно (все мы были в какой-то точка)).

Сокращенная версия моего ответа:
1) Экспортируйте свои базы данных индивидуально
2) Импортируйте в свою новую установку XAMPP

IT-Pro
источник
5
  1. Перейдите phpinfo(), нажмите ctrl+ fи введитеthread чтобы проверить значение.
  2. Если она включена, загрузите версию, не поддерживающую потоки, в противном случае загрузите версию, защищенную от потоков, отсюда (zip).
  3. Распакуйте его и переименуйте папку в php.
  4. Перейдите в папку xampp, переименуйте папку по умолчанию phpво что-то другое.
  5. Скопируйте извлеченную (переименованную php) папку в каталог xampp.
  6. Скопируйте php.iniфайл из phpпапки default / old (которую вы переименовали) и вставьте в новую phpпапку.
  7. Перезапустите сервер xampp, и все готово.
Мухаммед Юнус
источник
5

Существуют более новые бета-версии Xampp, которые поставляются с новыми обновлениями PHP.

Вы должны проверить на http://www.apachefriends.org

Andrés
источник
3

http://www.apachefriends.org/en/xampp-windows.html

На этом сайте вы можете получить

Дополнения XAMPP

с помощью этого дополнения вы можете обновить последние версии.

гопи
источник
Все заархивированные папки / исполняемые файлы установки, которые я загружаю по этой ссылке, либо пусты, либо повреждены! Пожалуйста помоги?
Мариенке
3

1) Сделайте резервную копию вашей папки htdocs
2) экспортируйте свои базы данных (следуйте этому руководству)
3) удалите xampp
4) установите новую версию xampp
5) замените папку htdocs, для которой вы создали резервную копию
6) Импортируйте базы данных, которые вы экспортировали ранее

Примечание . В случае, если вы изменили конфигурационные файлы, такие как PHP (php.ini), Apache (httpd.conf) или любые другие, пожалуйста, сделайте резервную копию этих файлов и замените их новой установленной версией.

csandreas1
источник
3

Чтобы обновить последнюю версию PHP в xampp без потери данных htdocs, вам необходимо скачать zip-файл нужной версии PHP с sourceforge.net, затем скопировать папку PHP из извлеченного файла и вставить ее в папку xampp.

ПРИМЕЧАНИЕ. Не забудьте переименовать старую папку с файлами PHP, которая уже существует.

Затем просто отредактируйте файл php.ini с текущим путем, чтобы добраться до нужной папки PHP

После этого вам нужно перезапустить ваш xampp.

Я нашел видео на YouTube, которое может помочь вам. как обновить версию php в xampp

гнида
источник
2

Я просто обновляю свой старый портативный XAMPP с PHP 5.3.X (включая Mercury & FileZilla & Tomcat) до портативного XAMPP с PHP 5.6.X (включая предыдущие версии) ...
Мой путь:

  1. Первая загрузка: последняя версия xampp portable (моя рабочая версия: xampp-portable-win32-5.6.14-3-VC11 Прямая ссылка на скачивание ) Последняя XAMPP
  2. Извлеките новый загружаемый файл на диск d, потому что в новой версии нет ртути, filezilla, tomcat, а затем я скопирую эти пакеты из моей старой версии в новую.
  3. Теперь на старом xampp сначала скопируйте все файлы htdocs в новый xampp htdocs
  4. Теперь на старом xampp резервное копирование всей базы данных в 5 двух 10 разделенных файлов sql
  5. Теперь на новом xampp собирается и изменить некоторые настройки, такие как max_upload_sizeи т. Д. На php.ini, а также в/apache/conf/extra/httpd-xampp.conf
  6. Теперь удалите (сделайте архив rar и удалите) его и скопируйте новый xampp с диска Dна дискC
  7. Теперь запустите новый xampp, зайдите в phpmyadmin, создайте пользователя и пароль, которые я использовал в предыдущем xampp, и добавьте все привилегии этого пользователя.
  8. Теперь собираемся импортировать вкладку на phpmyadmin и отдельно импортировать файлы sql.
  9. Теперь я тестирую xampp со всеми новыми функциями на диске C

ПРИМЕЧАНИЕ.
На вкладке «Экспорт базы данных» в phpmyadmin выберите символ UTF-8 и установите Disable foreign key checksфлажок,
а на вкладке «Импорт» снимите флажок Enable foreign key checks.

Мостафа
источник
2

1) Скачать новый PHP с официального сайта (лучше немного zip). Старый phpкаталог переименовать php_oldи создать зановоphp каталог и поместите туда разархивированные файлы.

В php.iniConnect необходимые модули , если вы использовали что - то , что он был выключен по умолчанию (например , Memcached и т.д.), но не забудьте добавить соответствующие .dllфайлы.

2) В моем случае мне пришлось обновить Apache. Повторите те же действия: загрузите новый пакет, переименуйте каталоги, создайте новыйapache каталог и поместите свои новые файлы.

Теперь вы можете попытаться перезапустить Apache, запущенный apache_start.batиз xamppпапки (лучше запустить эту летучую мышь, чем перезапускать службу Apache из окна служб Windows, потому что в этом случае в консоли вы увидите все ошибки, если они будут, включая строки в конфигурации, где вы ' будет проблема). Если вы обновили Apache и запустили этот файл, в списке служб вы увидите Apache2.2, но в описании вы можете получить другую версию (в моем случае это была Apache / 2.4.7).

В случае обновления Apache у вас могут возникнуть проблемы, так что учтите:

  • после замены всего каталога вам может потребоваться настроить ваш apache/conf/httpd.confфайл (скопировать виртуальные хосты из старого конфига, настроить DocumentRoots, разрешения для каталогов, все пути, расширить список файлов индекса (по умолчанию apache имеет только index.htmlтак, что другие файлы индекса будут просто проигнорируйте, и Apache просто перечислит корневой каталог сайта в браузере), настроит ваши логи и т. д.)

  • подключите нужные вам модули (если вы использовали что-то, что не было включено по умолчанию, например mod_rewrite и т. д.)

kovpack
источник
0

Для обновления php в Xampp вы можете следовать этим шагам, иначе вы можете пропустить эти 4 шага и напрямую установить MAMP (для windows) с сайта, а вот прямая ссылка для скачивания

Шаг 1: Сделайте резервные копии Перед началом убедитесь, что сделали резервные копии любых настроек, пользовательских модулей и, самое главное, каталога htdocs, который содержит ваши скрипты и ресурсы страницы. Этот каталог обычно находится в C: \ xampp \ htdocs \

Шаг 2: Подготовка

Загрузите PHP 5.3.0rc2. Я использую сборку VC6, чтобы минимизировать возможные проблемы совместимости. Также рекомендуется загрузить последнюю версию Windows XAMPP. Хотя это руководство по обновлению, которое должно работать с предыдущими версиями XAMPP, рекомендуется использовать свежую копию основных файлов. Остановите все экземпляры службы Apache, которые могут работать.

Шаг 3. Обновление В этом руководстве предполагается, что каталог XAMPP находится в C: \ xampp \

Извлеките архив XAMPP в каталог по вашему выбору, я бы рекомендовал использовать по умолчанию C: \ xampp \ Извлечь содержимое архива PHP в C: \ xampp \ php \, перезаписав содержимое этого каталога новыми файлами. Откройте файл C: \ xampp \ apache \ conf \ extra \ httpd-xampp.conf и убедитесь, что в этом порядке присутствуют следующие строки:

LoadFile "/xampp/php/php5ts.dll"
LoadModule php5_module "/xampp/apache/bin/php5apache2_2.dll"

Replace C:\xampp\php\php.ini with C:\xampp\php\php.ini-dist
Uncomment the lines:

;extension=php_mbstring.dll
;extension=php_pdo_sqlite.dll

Replace the line

magic_quotes_gpc = On

with

magic_quotes_gpc = Off

Скопируйте все файлы из C: \ xampp \ php \ в C: \ xampp \ apache \ bin \ (не копируйте подкаталоги или их содержимое).

После выполнения описанных выше шагов перезапустите службу Apache (это можно сделать с помощью C: \ xampp \ xampp-control.exe или вручную через панель управления / командную строку). Ваша PHPinfo должна указывать, что обновление прошло успешно. Я обновлю этот пост, если обнаружу какие-либо проблемы с использованием этого метода или более чистых (автоматизированных) средств выполнения обновления.

manish1706
источник