Большое преимущество WAMPServer над всеми другими параметрами WAMP Stack заключается в том, что он может поддерживать несколько версий Apache/MySQL/PHP и позволяет вам переключаться между любыми из 3 по желанию, предполагая базовую совместимость между компиляторами и связями (по одному из них в любой момент времени).
Итак, предполагая, что вы хотите использовать версию PHP5.3, совместимую с Apache 2.4, например 5.3.28+, все, что вам нужно сделать, это вручную установить версию PHP в ваш WAMPServer2.5.
КАК УСТАНОВИТЬ ВРУЧНУЮ новый релиз PHP в WAMP СРЕДЫ
Перед тем, как начать
На Apache и PHP вы увидите аббревиатуры VC6, VC9, VC10 или VC11. Это означает версию компилятора, используемую для компиляции этой программы или dll. К сожалению, вы не можете их смешивать, когда дело доходит до Apache и PHP, поскольку оно настроено на WAMPServer, хотя в некоторых документах предполагается, что VC10 и VC11 совместимы друг с другом, Я не гарантирую этого. Итак, сначала вы должны выяснить, какой компилятор использовался для компиляции Apache, который вы используете в данный момент, поэтому вы можете получить PHP, который был скомпилирован с той же версией компилятора.
С течением времени это усложняется, поскольку новые версии PHP не компилируются и не связаны со старыми версиями компиляторов. Некоторое время назад VC6 был сброшен. Поэтому, если вы хотите использовать новый PHP, вам, вероятно, придется обновить версию Apache, так что у вас есть версия, скомпилированная, по крайней мере, с VC9
Способ взаимодействия PHP и Apache в установке WAMPServer по умолчанию заключается в том, что Apache запускает PHP Interpereter как dll (php5apachex_y.dll), так как это очень тесная связь, т. Е. Не связь через TCP-порт, как PHP и MySQL, поэтому оба они должны быть скомпилированы с использованием той же версии Microsoft Visual C Compiler.
От WampManager «Остановить все службы».
Загрузите выпуск PHP, который вы хотите установить, из HERE или если его текущий выпуск от The Achives Вы должны использовать сборку Thread Safe. Обычно версия Not Thread Safe имеет acronim NTS, а в потокобезопасной версии есть TS или ничего. Вы должны скачать ZIP, а не .msi Убедитесь, что он построен с теми же версиями компилятора, что и Apache (VC6/VC9/VC10/VC11), да, это мое поле. Но если вы используете WAMPServer 2.5 или>, тогда вы хотите версию VC11 Thread Safe, но версии, скомпилированные с VC9 и VC10, также могут работать.
Создайте новую папку под c: \ wamp \ bin \ php \ с именем = версия, которую вы устанавливаете, например, создайте папку под названием php5.5.11.
Теперь из папки, содержащей ваши последние (и рабочие) версии PHP, скопируйте файл wampserver.conf и вставьте его в новую папку PHP, созданную в предыдущей настройке. Этот файл требуется серверу wamp, чтобы правильно определить, что это допустимая папка версии PHP. Файл содержит ссылки на имена файлов dll, которые содержат интерпретатор PHP, так что правильный файл можно скопировать в папку Apache при активации этой новой версии интерпретатора PHP.
Файл должен выглядеть так, если вы переходите с очень старой версии PHP, вам может потребоваться добавить некоторые новые разделы отсюда в ваш файл.
<?php
$phpConf['phpIniDir'] = '.';
$phpConf['phpExeDir'] = '.';
$phpConf['phpConfFile'] = 'php.ini';
$phpConf['apache']['2.2']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.2']['LoadModuleFile'] = 'php5apache2_2.dll';
$phpConf['apache']['2.2']['AddModule'] = '';
$phpConf['apache']['2.4']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.4']['LoadModuleFile'] = 'php5apache2_4.dll';
$phpConf['apache']['2.4']['AddModule'] = '';
?>
Более поздние версии PHP т.е. PHP6.5 и выше не собираются работать с Apache 2.2, так что вы должны изменить файл, чтобы посмотреть, как это
<?php
$phpConf['phpIniDir'] = '.';
$phpConf['phpExeDir'] = '.';
$phpConf['phpConfFile'] = 'php.ini';
$phpConf['apache']['2.4']['LoadModuleName'] = 'php5_module';
$phpConf['apache']['2.4']['LoadModuleFile'] = 'php5apache2_4.dll';
$phpConf['apache']['2.4']['AddModule'] = '';
?>
Теперь распаковать загруженный PHP в ваш новую папку, убедитесь, что иерархия папок похожа на существующую иерархию в существующей версии PHP.
Теперь в новой папке скопировать файл «php.ini_development» в новый файл под названием «php.ini»
Сделайте то же самое еще раз, но вставить в файл под названием «phpForApache.ini»
Теперь у вас должен быть исходный файл php.ini_development PLUS 2, один из которых называется php.ini, а один называется «phpForApache.ini».
Файл «php.ini» используется, если вы используете PHP CLI т.е. запустить php из командной строки '> php script.php' phpForApache.ini - это php config, используемая Apache. Этот файл копируется в текущую активную папку Apache и переименовывается в php.ini WAMPManager при активации этой версии PHP.
Теперь мы должны внести некоторые изменения в файлы php.ini, чтобы их WAMPise. Не спешите сюда, это сэкономит ваше время позже. Отредактируйте вновь созданный 'phpForApache.INI»файлов и поиск extension_dir и изменения в
extension_dir = "d:/wamp/bin/php/phpx.y.z/ext/" <- where x,y,z match the folder you are putting the new PHP into.
Поиск по
error_log = php_errors.log
и изменения в
error_log = c:\wamp\logs\php_errors.log
Искать что-нибудь 'PHP /' и убедитесь, что вы измените его на вы c: \ wamp \ bin \ php \ php.xyz имя папки.
Фактически найдите что-нибудь с C: \ в нем и убедитесь, что его заменили на эквивалент WAMPServer.
По PHP5.4 необходимо установить Искать «часовой пояс» и поместить запись в поле «» date.timezone как минимум
date.timezone = "Europe/London"
date.default_latitude = 0.0
date.default_longitude = 51.502973
взгляд здесь для списка часовой пояс поддерживаемых «http://www.php.net/manual/en/timezones.php»
PHP5.5 конкретные значения TimeZone изменения
Все расширения PHP закомментировано, так что вам нужно вручную раскомментируйте по крайней мере, некоторые из них
Проверьте свой последний использованный php.ini, чтобы узнать, что вам нужно, помните, что некоторые расширения могли быть включены в ядро php, поэтому вам может потребоваться проверить журнал изменений php для получения более подробной информации.
Теперь могут быть другие изменения конфигурации, которые вы внесли в существующий PHP, вам придется найти и перенести себя. Предлагаю вам сравнить ваш последний \ wamp \ bin \ apache \ apachex.y.z \ bin \ php.ini с этим новым и переместить все, что вы считаете релевантным.
DONT FORGET, если вы используете PHP CLI, вам также нужно будет сделать это в файле php.ini.
Убедитесь, что все службы остановлены в wampmanager, а затем щелкните правой кнопкой мыши значок значка управления на панели задач и выберите пункт меню «Обновить».
Когда вы нажмете на wamp manager -> PHP -> Version, вы увидите свою новую версию в списке.
Если новая версия не отображается, возможно, вы неправильно указали имя файла phpForApache.ini. Исправьте его и повторите «обновление».
Теперь вы можете «перезагрузить все службы» из меню диспетчера wamp.
ПРИМЕЧАНИЕ: Вы ничего на самом деле ничего не изменили, поэтому, если WAMPServer, Apache, PHP и т. Д. Работали до того, как они еще должны быть.
Активируйте новую версию PHP.
С помощью меню управления Wamp снова нужно просто щелкнуть по номеру новой версии, чтобы активировать его.
wamp manager -> PHP -> Version -> 5.5.11 <- or whatever the version number is you have just added
Это вызовет WAMP менеджер в: -
- Stop Apache (иконка будет идти Orange)
- Скопируйте нужные файлы из папки PHP в папку Apache или если вы находитесь на WAMPServer 2.5 или выше создайте правильный SYMLINK в папке apachex.yz/bin.
- Перезапустить Apache. Значок диспетчера Wamp снова должен появиться GREEN.
Если значок диспетчера wamp остается ORANGE, значит, вы что-то пропустили, возможно, неправильное имя файла. Файл phpForApache.ini должен существовать.
Теперь запустите localhost из меню диспетчера wamp и проверьте домашнюю страницу сервера Wamp. Он должен сказать вам, какая версия PHP загружена.
[IMG] http://derp.co.uk/27aaf[/img]
НЕИСПРАВНОСТЬ Если все пойдет не так, когда вы активируете новый PHP, вы можете легко вернуться из неприятностей, просто активируя любую версию PHP вы использовали до этого, а затем возвращаясь, чтобы увидеть, что вы сделали неправильно.
ДОБАВЛЕНИЕ Xdebug
Xdebug поставляется с WAMP Server, и невероятно полезно для отладки CLI или веб-скриптов. Но он не поставляется с PHP, который вы загрузили с веб-сайта PHP. При обновлении версии PHP до основной версии вам может потребоваться обновленная версия xdebug из «http://xdebug.org/download.php» . Для незначительного обновления версии вы, вероятно, можете использовать существующую версию xdebug, которую вы уже имеете на диске.
Итак, для небольшого обновления версии PHP скопируйте папку «c: \ wamp \ bin \ php \ php5.y.z \ zend_ext» из старого PHP в новую папку php.
Для серьезной модернизации PHP версии получить новую DLL с сайта XDebug и поместить его в новую папку под названием «C: \ WAMP \ Bin \ PHP \ php5.yz \ zend_ext»
Теперь добавьте линии, как это (версия конкретной конечно) к вашему php.ini (с помощью меню менеджера WAMP, чтобы убедиться, что вы редактируете правильный файл)
;XDEBUG Extension
zend_extension = "d:/wamp/bin/php/phpx.y.z/zend_ext/php_xdebug-2.2.2-5.3-vc9.dll"
[xdebug]
xdebug.remote_enable = off
xdebug.profiler_enable = off
xdebug.profiler_enable_trigger = off
xdebug.profiler_output_name = cachegrind.out.%t.%p
xdebug.profiler_output_dir = "d:/wamp/tmp"
Что исследование вы сделали до сих пор? – dedek
У меня есть несколько статей и поиск здесь в stackoverflow, но результатов не найдено. Это помогло немного, но до сих пор не знает, как устанавливать версии вручную. Ссылка на статью: http: //blog.dynom.nl/archives/Multiple-PHP-versions-on-one-webserver_20091103_53.html –