понизить версию php xampp
Как установить более старую версию PHP в XAMPP на Ubuntu 16.04?
Я пытаюсь установить Magento в моей системе, но это дает мне ошибку, что PHP версия, которая у меня есть, новее и Magento не поддерживается эта версия. Так что теперь я пытаюсь понизить мой PHP версия от XAMPP на котором я установлен Ubuntu 16.04.
Ошибка :
Проверка версии PHP Ваша версия PHP — 7.1.1. Требуемая версия PHP
7.0.6. Скрыть детали
Загрузите и установите PHP с www.php.net, используя этот PHP
Документация.
Для получения дополнительной помощи свяжитесь с вашим хостинг-провайдером.
Но я не совсем понимаю, как это сделать. Это хорошо, чтобы понизить его или я должен установить новый PHP в XAMPP.
Я знаю, что этот вопрос не относится к stackoverflow, но я погуглил его и не получил правильного вывода, поэтому я публикую этот вопрос здесь.
Есть некоторые связи что я упоминал:
Эти ссылки все об установке двух или более версий PHP в Ubuntu, но я не понимаю, как я могу сделать это в XAMP на Ubuntu 16.04. Пожалуйста, любая помощь приветствуется.
Решение
Поскольку Ubuntu 16 поставляется только с PHP 7, доступным в его репозиториях, вам нужно будет добавить новый репозиторий с предыдущей версией. Это строка, которую вам нужно написать в консоли:
Я бы попытался удалить сначала самую новую версию перед установкой более старой. Наличие двух разных версий php просто не звучит правильно.
Есть ли способ использовать две версии PHP в XAMPP?
Мы запускаем XAMPP с PHP 7.0, потому что наши новые продукты требуют PHP 7.
Но есть старый проект, который использует такие функции, как mysql_connect и т. д. Они удалены в PHP 7.0.
Таким образом, есть способ легко изменить версии PHP в XAMPP.
Заметка : Пожалуйста, не предлагайте обновить старый проект до совместимости с новыми версиями, потому что я не в состоянии сделать это, потому что
решения, которые я не могу принять как разработчик (просто сотрудник).
Решение
Вы можете скачать любые версии PHP, которые вам нужны, и поместить их в свои собственные каталоги, например,
Все, что вам нужно сделать, это сообщить вашему веб-серверу (Apache), какую версию PHP использовать, что вы делаете, загружая соответствующий модуль. В Apache вы можете сделать это, найдя файл httpd.conf и затем редактируем соответствующую строку:
LoadModule php7_module c:\php7\libphp7.so
Конечно, вам нужно будет найти правильные пути — это только для иллюстрации.
Сохранить httpd.conf и перезапустите свой сервер. Обратите внимание, что если вы не перезапустите его, изменения не вступят в силу.
Вам не нужно несколько версий XAMPP, или для двойной загрузки, или для использования другой машины, или любого другого «решения», предложившего запутанные обходные пути. ОП хочет использовать XAMPP и сообщить ему, какую версию PHP использовать. Это самый быстрый и эффективный способ сделать это, и он требует только одной установки XAMPP.
Другие решения
Зачем переключаться между версиями PHP, когда вы можете использовать несколько PHP
версия одновременно с одиночная установка xampp?
С одной установкой xampp у вас есть 2 варианта:
Запустите старую версию PHP только для каталога вашего старого проекта:
Это будет служить цели большую часть времени, у вас может быть один или два
старые проекты, которые вы собираетесь запускать с более старой версией PHP.
Просто настройте xampp для запуска более старой версии PHP только для
эти каталоги проектов.
Запустите старую версию PHP на отдельном порту xampp: Иногда вы можете
обновите старый проект до последней версии PHP, когда вам нужно будет запустить
один и тот же проект на новой и старой версии PHP туда и обратно.
Затем вы можете установить более старую версию PHP на другой порт (скажем, 8056)
поэтому, когда вы идете в http://localhost/any_project/ xampp работает на PHP 7
и когда вы идете в http://localhost:8056/any_project/ xampp запускает PHP
5.6.
Запустите старую версию PHP на виртуальном хосте: Вы можете создать виртуальный хост
как localhost56 для запуска PHP 5.6, в то время как вы можете использовать PHP 7 на localhost.
Давайте настроим это.
Шаг 1: Скачать PHP
Шаг 2: конфигурировать php.ini
открыто c:\xampp\php56\php.ini файл в блокноте. Если файл не существует, скопируйте php.ini-development в php.ini и откройте его в блокноте. Затем раскомментируйте следующую строку:
Шаг 3: Настройте Apache
Замечания: Вы можете добавить больше версий PHP к вашей установке xampp, следуя шагам 1-3, если хотите.
Шаг 4 (вариант 1): [Добавить каталоги для запуска конкретной версии PHP]
Теперь вы можете установить каталоги, которые будут работать в PHP 5.6. Просто добавьте следующее в нижней части файла конфигурации, чтобы установить каталоги.
Шаг 4 (вариант 2): [Запустить старую версию PHP на отдельном порту]
Теперь, чтобы установить PHP v5.6 на порт 8056, добавьте следующий код в конец файла конфигурации.
Шаг 4 (вариант 3): [Запустить старую версию PHP на виртуальном хосте]
Конец: Сохраните и перезапустите Apache
Сохраните и закройте файл конфигурации. Перезапустите apache из панели управления xampp. Если вы выбрали вариант 2, вы можете увидеть дополнительный порт (8056), указанный на панели управления xampp.
Обновление для ошибки:
неправильно сформированный заголовок из сценария php-cgi.exe: неверный заголовок
Если вы столкнулись с вышеуказанной ошибкой, откройте httpd-xampp.conf еще раз и закомментируйте следующую строку с начальным # (хеш-символ).
Вы можете скачать и установите два разных xampps, как я: (первый — php7, второй — php5)
Я бы порекомендовал использовать Docker, это позволяет разделить среду на различные компоненты, а также смешивать и подбирать нужные вам компоненты в любое время.
Docker позволит вам запускать один контейнер с MySQL, другой с PHP. Поскольку они являются отдельными изображениями, у вас может быть два контейнера, один PHP 5, другой PHP 7, вы запускаете тот, который вы хотите, и порт 80 может быть сопоставлен с обоими контейнерами.
https://hub.docker.com имеет широкий спектр предварительно настроенных образов, которые вы можете установить и запустить без особых хлопот.
Я также добавил portainer как образ, который позволяет вам управлять различными аспектами вашей настройки докера — из образа докера (я запустил этот контейнер при запуске, чтобы избавить меня от необходимости использовать командную строку). Он не делает все для вас, и иногда проще настроить и запустить образы в первый раз из командной строки, но после настройки вы можете запускать и останавливать их через веб-интерфейс.
Также возможно запускать оба контейнера одновременно и сопоставлять отдельные порты с каждым. Таким образом, порт 80 может быть сопоставлен с PHP 5, а 81 с PHP 81 (или с PHP 7, если вы смотрите это в 2017 году).
Существуют различные учебные пособия по установке Docker ( https://docs.docker.com/engine/installation/ ) и множество других «как» печатать вещи. Пытаться http://www.masterzendframework.com/docker-development-environment/ для конфигурации среды разработки.
Вы можете иметь две разные версии XAMPP.
Да, ты можешь. Я предполагаю, что у вас уже установлен xampp. Так,
Вот так я работаю с несколькими установленными xampp
Если это не совсем и определенно XAMPP, вы можете попытаться получить то, что вы хотите, с WAMP.
WAMP — это почти одно и то же в другой упаковке.
После установки вы можете просто переключаться между версиями php:
Вы можете установить столько версий PHP, сколько вам нужно.
Вот как это сделано в деталях.
Затем выберите свой базовый сервер, например, последний с php7.
Затем, когда WAMP 3 установлен, перейдите в папку: аддоны и выберите версию PHP (или версии) вы после. Они предлагают разновидности php начиная с php 5.3.29, которые должны работать с mysql_connect.
Чтобы установить аддон, во время установки (дважды щелкните exe-файл) просто укажите папку, в которой установлен WAMP 3.
Затем вы можете использовать содержимое других папок, например: Приложения и т.д., чтобы добавить больше функциональности
Все взаимосвязано, так что вы можете сосредоточиться на кодировании, а не на взломе вашей среды.
запустите это в командной строке Windows (cmd.exe).
измените его в зависимости от того, куда вы положили установку php 7.
Добавление поддержки PHP 5.2 в XAMPP
XAMPP — это связка PHP-Apache-MySQL, а так же Perl, ProFTPd, phpMyAdmin и много другого в одной готовой связке. У него есть свои плюсы и свои минусы, и информацией по исправлению одного из таких недостатков я хочу поделиться в этом посте.
«Недостаток» состоит в том, что разработчики стараются включить в паке скорее свежие, нежли стабильные версии софта, которые порою еще не поддерживаются сторонними расширениями. Для меня камнем преткновения стали PHP 5.3, присутствующий в XAMPP с версии 1.7.2, и Zend Optimizer, которого для PHP 5.3 еще нет (хотя и давно обещали).
Логика и Гугль подсказали два варианта решения проблемы — даунгрейд всего XAMPP до версии 1.7.1 или даунгрейд PHP до 5.2. Второй вариант я счел более предпочтительным, поскольку он оставлял более свежие версии всего остального софта, да и показался менее хлопотным. Исходный вектор решения был найден на stackoverflow и дополнен самостоятельно для получения возможности переключаться с PHP 5.3 на 5.2 и обратно.
Решение
Мною был собран небольшой архив, содержащий все необходимое для скрещивания двух версий PHP в XAMPP 1.7.3a и измененные скрипты, позволяющие переключать версии.
Скачать архив (Яндекс.Диск)
Установка сводится к простой распаковке архива поверх вашей установки XAMPP и перезапуске веб-сервера. Функция переключения между версиями выделена в отдельную часть и лежит в папке архива contrib. Там находятся уже измененные файлы и patch для тех, кто уже модифицировал стандартные скрипты для своих нужд.
DIY или общая инструкция для других версий
Все! Теперь мы можем набирать в консоли /opt/lampp/lampp php5.2 и проверять phpinfo ().
Ну и пара замечаний напоследок. Во-первых, в процессе гугления я встречал упоминнания, что людям удавалось подсунуть даже более свежие версии PHP 5.2, чем те, что были в XAMPP годичной давности, взяв их из репозитория дистрибутива. Я достоверность не проверял за неактуальностью для меня, да и сомневаюсь, что это корректно, поскольку пути поиска настроек и расширений в XAMPP свои.
Во-вторых, можно попытаться собрать нужную версию самому, воспользовавшись Development Package с сайта XAMPP и исходниками PHP.
How to upgrade lower version to latest PHP version in XAMPP on Windows
It is not very complex but some time very essential when we need latest version of php for new project without changing the current local server settings.
so i am trying to cover the changing the version by keeping the old version manually.
PHP 7.0.0 is released on 3rd Dec. 2015. It comes with more strong features which I listing below:–
Now i am going to show how you will overcome this situation. my present php version is php-5.6.36
Step 1: First download the latest php version from http://windows.php.net/download#php-7.0 Download the VC14 x86 Thread Safe or VC14 x64 Thread Safe deciding upon your Windows version( x86 for 32-bit and x64 for 64-bit ). Next extract the zip file in a folder named php.
Step 2: Go to your XAMPP installation directory and rename your old php directory with old version prefix like php to php_5_6_36. Now copy & paste the extracted new php folder to here.
Step3: Next, open httpd-xampp.conf from XAMPP configuration.
On PHP-Module setup section, comment these two lines and add the two lines below
#
# PHP-Module setup
#
#LoadFile “D:/xampp/php/php5ts.dll”
#LoadModule php5_module “D:/xampp/php/php5apache2_4.dll”
LoadFile “D:/xampp/php/php7ts.dll”
LoadModule php7_module “D:/xampp/php/php7apache2_4.dll”
That’s it. Now restart your XAMPP server and keep coding.
Upgrading PHP in XAMPP for Windows?
I would like to know how you upgrade PHP in Xampp for Windows? I tried to download the latest PHP version from the main PHP site but when I check (phpinfo) I still get that the previous version is still in use.
18 Answers 18
Take a backup of your htdocs and data folder (subfolder of MySQL folder), reinstall upgraded version and replace those folders.
Note: In case you have changed config files like PHP (php.ini), Apache (httpd.conf) or any other, please take back up of those files as well and replace them with newly installed version.
You can go through the following link as it helped me, should work for you as well. http://hype-free.blogspot.com/2007/07/updating-php-in-xampp-for-windows.html
Realizing that my answer helped couple of users, here is the edit from original link:
First of all Always backup your data.
NOTE: there are two directories to be updated with new version of files, namely php sub-directory and apache/bin sub-directory, inside XAMPP installation.
Simplest method to upgrade PHP in XAMPP :
I needed to update my php from 5.3.8 to 5.3.29. (both Thread Safe) on Windows
Hope that I covered everything.
Most probably these steps will not work if you change major versions of php, e.g. 5.3.x to 5.4.x, but for minor versions, it should work.
Also, a good way to see what’s wrong. start command line and try to start httpd.exe, under xampp/apache/bin from there, it will list errors found.
I have upgraded to php7.2 from php5.6
Steps which I followed.
LoadModule php5_module «C:/xampp/php/php5apache2_4.dll»
LoadModule php7_module «C:/xampp/php/php7apache2_4.dll»
I think you need to actually download and install XAMPP with the desired PHP version. I dont think you can just upgrade the components of XAMPP individually unless there is a facility provided for this within XAMPP itself.
download your desired version of php binary from http://windows.php.net/download/ website. download Thread Safe binary zip version. Unzip the downloaded version of the PHP in a separate folder. Please make sure that your new php folder name is not «PHP». May be you can use filder name as the version name. For example for php 5.4 you can use php54.
Copy the new php folder into your xampp folder. Now go to yourxampp/apache/conf/extra folder. Open file httpd-xampp.conf from the folder extra. Change the following variables:
Variable PHPINIDir to be / Varaible LoadModule to be //php5apache2_2.dl
Save the file httpd-xampp.conf. Restart your XAMPP apache server. If your server get restarted successfully then your server php version is upgraded.
I don’t have enough reputation to comment yet, but, to add to ssharma’s answer:
NOTE: There’s an option to export the entire collection of databases (it names the file 127.0.0.1.sql). But, I’ve never had much luck getting it to import correctly. Do each of your databases separately to ensure it works. I made this post kind of long-winded, but that’s because I like to write for the people that don’t know exactly what they’re doing yet (I, myself, was there not too long ago (all of us were at some point)).
Shorthand version of my answer:
1) Export your databases individually
2) Import into your new installation of XAMPP
There are newer beta versions of Xampp that come with newer PHP upgrades.
In this site you can get
by using this add on you can upgrade the latest versions.
1) Backup your htdocs folder
2) export your databases (follow this tutorial)
3) uninstall xampp
4) install the new version of xampp
5) replace the htdocs folder that you have backed up
6) Import your databases you had exported before
Note: In case you have changed config files like PHP (php.ini), Apache (httpd.conf) or any other, please take back up of those files as well and replace them with newly installed version.
To update with latest PHP version in xampp without losing your htdocs data you need to download the zip file of your desired version of PHP from sourceforge.net, then copy the PHP folder from the extracted file and paste it into your xampp folder.
NOTE: Don’t forget to rename the old PHP file folder which already exists.
Then simply edit your php.ini file with the current path to reach the right PHP folder
After that, you need to re-run your xampp.
I found a video on youtube which can help you. how to update php version in xampp
1) Download new PHP from the official site (better some zip). Old php directory rename to php_old and create again php directory and put there unzipped files.
2) In my case, I had to update Apache. So repeat the same steps: download the new package, rename directories, create new apache directory and put their new files.
Now you can try to restart apache running apache_start.bat from xampp folder (better run this bat, than restart apache service from Windows services window, cause in this case in console you’ll see all errors if there will be some, including lines in config where you’ll have problem). If you updated Apache and run this file, in the list of services you’ll see Apache2.2, but in description you can get another version (in my case that was Apache/2.4.7).
In case of Apache update you can get some problems, so mind:
after you replace the whole directory, you may need to configure you apache/conf/httpd.conf file (copy virtual hosts from old config, set up DocumentRoots, permissions for directories, all paths, extend the list of index files (by default apache has only index.html so other index files will be just ignored and Apache will just list the site root directory in browser), configure you logs etc.)
connect modules you need (if you used something that was not turned on by default like mod_rewrite etc.)
Uploaded it to the xampp directory by renaming the previous PHP folder to something else. But, then got the following error while starting the apache.
After that, I’ve replaced the apache directory as well from the xampp folder with a newer version which I’ve downloaded, it sorted the issue out.
Got another problem while trying to access the phpmyadmin page, then again renamed the previous phpmyadmin folder from the xampp directory and uploaded the new version from the downloaded files. It’s fixed the issue.
Note
In order to run apache server after upgradation PHP 7.4.x requires Microsoft Visual C++ Redistributable for Visual Studio 2019 which can be downloaded here under the heading Other Tools and Frameworks. otherwise apache server won’t start.
For Upgradation php in Xampp you can follow this steps, Else you can skip these 4 steps and direct install MAMP (for windows as well) from site and here is the direct download link
Step 1: Make backups Before starting, make sure to backup any settings, custom modules and most importantly the htdocs directory, which contains your scripts and page resources. This directory is normally located atC:\xampp\htdocs\
Step 2: Preparation
Download PHP 5.3.0rc2. I use the VC6 build in order to minimise any potential compatibility issues. It is also recommended that you download the latest Windows version of XAMPP. While this is an upgrade guide that shouldwork with previous versions of XAMPP, it is recommended that a fresh copy of the core files is used. Stop any instances of the Apache service that might be running.
Step 3: The upgrade This guide will assume your XAMPP directory is C:\xampp\
Extract the XAMPP archive to a directory of your choosing, I would recommend using the default C:\xampp\ Extract the contents of the PHP archive to C:\xampp\php\, overwriting the contents of this directory with the new files. Open the file C:\xampp\apache\conf\extra\httpd-xampp.conf and ensure the following lines are present in this order:
Copy all files in the C:\xampp\php\ to C:\xampp\apache\bin\ (do not copy the subdirectories or their contents).