Пытаюсь развернуть проект на базе Kohana в CentOS 5. Установил PHP 5.3.1, но все еще получаю следующую ошибку.
Warning: preg_match() [function.preg-match]: Compilation failed: this version of PCRE is not compiled with PCRE_UTF8 support at offset 0 in /usr/local/apache2/htdocs/icarus/system/core/utf8.php on line 30
Fatal error: PCRE has not been compiled with UTF-8 support. See PCRE Pattern Modifiers for more information. This application cannot be run without UTF-8 support. in /usr/local/apache2/htdocs/icarus/system/core/utf8.php on line 38
Пытаясь сделать это в течение последних 2 дней, я обновил свой PHP с 5.1 до 5.3, но все еще получаю ту же ошибку. Проблема, как мне кажется, в том, что модуль PCRE PHP в phpinfo() говорит, что он датирован сентябрем 2004 года. Ниже приведена фактическая строка
PCRE Library Version 5.0 13-Sep-2004
Может ли кто-нибудь подсказать, как его обновить или каково решение этой проблемы.
Спасибо.
решение1
Я перекомпилировал PCRE для своей системы, чтобы включить PCRE UTF-8
Мы используем PHP 5.2.6, однако причиной сбоя Kohana является pcre rpm.
[root@v1e-web1 files]# cat /etc/redhat-release
CentOS release 5.4 (Final)
[root@v1e-web1 files]# uname -a
Linux v1e-web1 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686 i686 i386 GNU/Linux
http://digirev.us/files/RPMS/pcre/
Возможно, эти файлы помогут.
решение2
Другой вариант - помимо обновления версии PHP на вашей установке CentOS 5 (что, как вы видели, болезненно), - это использовать мойсборка Kohana для CentOS 5(независимо от того, что говорится в тексте — репозиторий поддерживается в актуальном состоянии, и текущей версией является стабильная версия Kohana 3.0.8).
Программный стек Kohana пропатчен в этом дистрибутиве для работы из коробки на vanilla CentOS 5 с PHP 5.1.6. Функциональность практически не теряется (главная проблема — сообщения об ошибках, с которыми PHP 5.1 не так хорош), и он тщательно протестирован, поскольку используется несколькими разными людьми для запуска разных приложений.
решение3
Эту проблему невозможно решить с помощью оригинальных пакетов Centos 5.
Это не проблема, это особенность.
Вам необходимо перекомпилировать и обновить пакеты или использовать другой репозиторий, напримерремиилиЭПЕЛЬ.
Попробуйте сначала использовать только EPEL, он поставляется с php 5.3 как php-53*: yum remove php;yum install php53
ЗатемДОБАВЛЯТЬРепозиторий REMI, он поставляется с php 5.4 как php-*: yum remove php53;yum install php